Mercurial > evolve
annotate tests/test-exchange-D3.t @ 1779:ba9fabaca91b
prune: improve error message if unstable changes are disallowed
I saw a question on stackoverflow why evolve reports something like cannot
fold chain not ending with head. Even I was confused the first time about the
behavior. The error message can be improved to avoid confusion to people who
are unaware about the config in future.
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Wed, 23 Nov 2016 21:00:42 +0530 |
parents | 8a06b32061ce |
children | 778afb036245 |
rev | line source |
---|---|
850
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
1 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
2 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
3 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
4 Initial setup |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
5 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
6 $ . $TESTDIR/_exc-util.sh |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
7 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
8 === D.2 missing prune target (prune in "pushed set") === |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
9 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
10 {{{ |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
11 }}} |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
12 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
13 Marker exist from: |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
14 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
15 * A' succeed to A |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
16 * A' (prune) |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
17 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
18 Command run: |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
19 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
20 * hg push |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
21 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
22 Expected exchange: |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
23 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
24 * `A ø⇠o A'` |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
25 * A' (prune) |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
26 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
27 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
28 $ setuprepos D.2 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
29 creating test repo for test case D.2 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
30 - pulldest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
31 - main |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
32 - pushdest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
33 cd into `main` and proceed with env setup |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
34 $ cd main |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
35 $ mkcommit A0 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
36 $ hg up -q 0 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
37 $ mkcommit B |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
38 created new head |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
39 $ mkcommit A1 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
40 $ hg debugobsolete `getid 'desc(A0)'` `getid 'desc(A1)'` |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
41 $ hg prune -d '0 0' . |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
42 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
43 working directory now at 35b183996678 |
1239
8a06b32061ce
evolve: apply prune update before creating obsolescence markers
Laurent Charignon <lcharignon@fb.com>
parents:
1093
diff
changeset
|
44 1 changesets pruned |
850
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
45 $ hg strip --hidden -q 'desc(A1)' |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
46 $ hg log -G --hidden |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
47 @ 35b183996678 (draft): B |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
48 | |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
49 | x 28b51eb45704 (draft): A0 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
50 |/ |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
51 o a9bdc8b26820 (public): O |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
52 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
53 $ hg debugobsolete |
1065
f355bbc124fc
test: update test to new date formatting in debuobsolete output
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1060
diff
changeset
|
54 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
1067
5d063fed9e3d
evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1065
diff
changeset
|
55 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 {35b1839966785d5703a01607229eea932db42f87} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
850
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
56 $ cd .. |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
57 $ cd .. |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
58 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
59 Actual Test |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
60 ------------------------------------- |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
61 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
62 $ dotest D.2 O |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
63 ## Running testcase D.2 |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
64 # testing echange of "O" (a9bdc8b26820) |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
65 ## initial state |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
66 # obstore: main |
1065
f355bbc124fc
test: update test to new date formatting in debuobsolete output
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1060
diff
changeset
|
67 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
1067
5d063fed9e3d
evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1065
diff
changeset
|
68 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 {35b1839966785d5703a01607229eea932db42f87} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
850
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
69 # obstore: pushdest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
70 # obstore: pulldest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
71 ## pushing "O" from main to pushdest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
72 pushing to pushdest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
73 searching for changes |
1078
5717d023da63
obsexc: use the common discovery
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1067
diff
changeset
|
74 no changes found |
850
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
75 ## post push state |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
76 # obstore: main |
1065
f355bbc124fc
test: update test to new date formatting in debuobsolete output
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1060
diff
changeset
|
77 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
1067
5d063fed9e3d
evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1065
diff
changeset
|
78 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 {35b1839966785d5703a01607229eea932db42f87} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
850
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
79 # obstore: pushdest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
80 # obstore: pulldest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
81 ## pulling "a9bdc8b26820" from main into pulldest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
82 pulling from main |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
83 no changes found |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
84 ## post pull state |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
85 # obstore: main |
1065
f355bbc124fc
test: update test to new date formatting in debuobsolete output
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1060
diff
changeset
|
86 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
1067
5d063fed9e3d
evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1065
diff
changeset
|
87 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 {35b1839966785d5703a01607229eea932db42f87} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
850
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
88 # obstore: pushdest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
89 # obstore: pulldest |
3618454a4da0
exchange: add test case for D.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
90 |