annotate tests/test-push-checkheads-pruned-B4.t @ 3324:6ba8eaffe8f6

stablerange: use the jump information for faster iteration Instead of doing a full iteration over the exclusive set, we compare the jump information instead. This perform the same kind of logic than before but will allow for much faster iteration once all the caches are in place.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 20 Dec 2017 15:51:05 +0100
parents 8feb2cae7eae
children ccfcacc5ee7c 2e703ed1c713
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
1 ====================================
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
2 Testing head checking code: Case B-4
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
3 ====================================
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
4
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
5 Mercurial checks for the introduction of new heads on push. Evolution comes
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
6 into play to detect if existing branches on the server are being replaced by
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
7 some of the new one we push.
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
8
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
9 This case is part of a series of tests checking this behavior.
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
10
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
11 Category B: simple case involving pruned changesets
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
12 TestCase 4: multi-changeset branch, all are pruned
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
13
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
14 .. old-state:
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
15 ..
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
16 .. * 2 changeset branch
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
17 ..
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
18 .. new-state:
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
19 ..
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
20 .. * old branch is pruned
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
21 ..
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
22 .. expected-result:
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
23 ..
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
24 .. * push allowed
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
25 ..
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
26 .. graph-summary:
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
27 ..
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
28 .. B ⊗
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
29 .. |
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
30 .. A ⊗
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
31 .. |
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
32 .. | ◔ C
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
33 .. |/
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
34 .. ●
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
35
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
36 $ . $TESTDIR/testlib/push-checkheads-util.sh
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
37
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
38 Test setup
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
39 ----------
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
40
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
41 $ mkdir B4
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
42 $ cd B4
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
43 $ setuprepos
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
44 creating basic server and client repo
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
45 updating to branch default
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
46 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
47 $ cd server
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
48 $ mkcommit B0
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
49 $ cd ../client
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
50 $ hg pull
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
51 pulling from $TESTTMP/B4/server (glob)
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
52 searching for changes
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
53 adding changesets
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
54 adding manifests
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
55 adding file changes
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
56 added 1 changesets with 1 changes to 1 files
3075
8feb2cae7eae test: adapt to output change from eb586ed5d8ce
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2754
diff changeset
57 new changesets d73caddc5533
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
58 (run 'hg update' to get a working copy)
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
59 $ hg up 0
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
60 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
61 $ mkcommit C0
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
62 created new head
2251
2f71f6234b06 checkheads-tests: add missing parents recording for prune markers
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2247
diff changeset
63 $ hg debugobsolete --record-parents `getid "desc(A0)"`
2754
21f06d932231 test: update test output to match b11e8c67fb0f
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2710
diff changeset
64 obsoleted 1 changesets
2251
2f71f6234b06 checkheads-tests: add missing parents recording for prune markers
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2247
diff changeset
65 $ hg debugobsolete --record-parents `getid "desc(B0)"`
2754
21f06d932231 test: update test output to match b11e8c67fb0f
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2710
diff changeset
66 obsoleted 1 changesets
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
67 $ hg log -G --hidden
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
68 @ 0f88766e02d6 (draft): C0
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
69 |
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
70 | x d73caddc5533 (draft): B0
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
71 | |
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
72 | x 8aaa48160adc (draft): A0
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
73 |/
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
74 o 1e4be0697311 (public): root
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
75
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
76
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
77 Actual testing
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
78 --------------
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
79
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
80 $ hg push
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
81 pushing to $TESTTMP/B4/server (glob)
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
82 searching for changes
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
83 adding changesets
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
84 adding manifests
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
85 adding file changes
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
86 added 1 changesets with 1 changes to 1 files (+1 heads)
2251
2f71f6234b06 checkheads-tests: add missing parents recording for prune markers
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2247
diff changeset
87 2 new obsolescence markers
2710
e22de367fc74 compat: adapt to change in 53b3a1968aa6-core
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2277
diff changeset
88 obsoleted 2 changesets
2247
2320a7e3cbd7 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
89
2277
61d885899466 checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2251
diff changeset
90 $ cd ../..