Mercurial > evolve
annotate tests/test-push-checkheads-pruned-B1.t @ 4843:d6e2820dac1f stable
tests: add some more actions to test-issue-6028, describe what's being done
This patch does two things: it explains what's happening in the test file so
it's easier to understand, and also it adds checks that make sure something
like swapping merge parents is not accidentally breaking anything.
The primary reason to touch this test file was that it was broken by a change
in core's merge.graft() that erroneously swapped merge parents. Since only
evolve uses merge.graft() for merge commits and there aren't any tests in core
for it, let's test it here. Plus, this test case is pretty simple and these
additional checks don't make it too complicated.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Thu, 19 Sep 2019 11:46:16 +0700 |
parents | 21f06d932231 |
children | 2280461343e5 62b60fc1983d |
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-1 |
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 1: single pruned changeset |
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 .. * 1 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 .. * 1 new unrelated branch |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
22 .. |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
23 .. expected-result: |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
24 .. |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
25 .. * push allowed |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
26 .. |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
27 .. graph-summary: |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
28 .. |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
29 .. ◔ B |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
30 .. | |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
31 .. A ⊗ | |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
32 .. |/ |
2277
61d885899466
checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2251
diff
changeset
|
33 .. ● |
2247
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
34 |
2277
61d885899466
checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2251
diff
changeset
|
35 $ . $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
|
36 |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
37 Test setup |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
38 ---------- |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
39 |
2277
61d885899466
checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2251
diff
changeset
|
40 $ mkdir B1 |
61d885899466
checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2251
diff
changeset
|
41 $ cd B1 |
2247
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
42 $ setuprepos |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
43 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
|
44 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
|
45 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
|
46 $ cd client |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
47 $ 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
|
48 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
|
49 $ mkcommit B0 |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
50 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
|
51 $ 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
|
52 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
|
53 $ 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
|
54 @ 74ff5441d343 (draft): B0 |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
55 | |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
56 | 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
|
57 |/ |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
58 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
|
59 |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
60 |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
61 Actual testing |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
62 -------------- |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
63 |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
64 $ 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
|
65 pushing to $TESTTMP/B1/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
|
66 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
|
67 adding changesets |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
68 adding manifests |
2320a7e3cbd7
checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
69 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
|
70 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
|
71 1 new obsolescence markers |
2710
e22de367fc74
compat: adapt to change in 53b3a1968aa6-core
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2277
diff
changeset
|
72 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
|
73 |
2277
61d885899466
checkheads: update tests to match the one in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2251
diff
changeset
|
74 $ cd ../.. |