comparison tests/test-push-checkheads-supersede-A4.t @ 6064:28a77df6e41f mercurial-5.7

test-compat: merge mercurial-5.8 into mercurial-5.7 # no-check-commit
author Anton Shestakov <av6@dwimlabs.net>
date Tue, 12 Oct 2021 11:15:44 +0300
parents 144d10e74757
children df773a9bed0c fc60328270ac
comparison
equal deleted inserted replaced
5996:91c3a9dd5f77 6064:28a77df6e41f
1 ====================================
2 Testing head checking code: Case A-4
3 ====================================
4
5 Mercurial checks for the introduction of new heads on push. Evolution comes
6 into play to detect if existing branches on the server are being replaced by
7 some of the new one we push.
8
9 This case is part of a series of tests checking this behavior.
10
11 Category A: simple case involving a branch being superseded by another.
12 TestCase 4: New changeset as children of the successor
13
14 .. old-state:
15 ..
16 .. * 1-changeset branch
17 ..
18 .. new-state:
19 ..
20 .. * 2-changeset branch, first is a successor, but head is new
21 ..
22 .. expected-result:
23 ..
24 .. * push allowed
25 ..
26 .. graph-summary:
27 ..
28 .. ◔ B
29 .. |
30 .. A ø⇠◔ A'
31 .. |/
32 .. ●
33
34 $ . $TESTDIR/testlib/push-checkheads-util.sh
35
36 Test setup
37 ----------
38
39 $ mkdir A4
40 $ cd A4
41 $ setuprepos
42 creating basic server and client repo
43 updating to branch default
44 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
45 $ cd client
46 $ hg up 0
47 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
48 $ mkcommit A1
49 created new head
50 $ hg debugobsolete `getid "desc(A0)" ` `getid "desc(A1)"`
51 1 new obsolescence markers
52 obsoleted 1 changesets
53 $ mkcommit B0
54 $ hg log -G --hidden
55 @ f40ded968333 (draft): B0
56 |
57 o f6082bc4ffef (draft): A1
58 |
59 | x 8aaa48160adc (draft): A0
60 |/
61 o 1e4be0697311 (public): root
62
63
64 Actual testing
65 --------------
66
67 $ hg push
68 pushing to $TESTTMP/A4/server (glob)
69 searching for changes
70 adding changesets
71 adding manifests
72 adding file changes
73 added 2 changesets with 2 changes to 2 files (+1 heads)
74 1 new obsolescence markers
75 obsoleted 1 changesets
76
77 $ cd ../../