Mercurial > hg-stable
annotate tests/test-revert.t @ 22139:1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
This test highlights a case where backups are not created and the user may
lose data.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Fri, 27 Jun 2014 18:08:16 +0200 |
parents | 80206e63c3cc |
children | 74e932047975 |
rev | line source |
---|---|
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
1 $ hg init repo |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
2 $ cd repo |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
3 $ echo 123 > a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
4 $ echo 123 > c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
5 $ echo 123 > e |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
6 $ hg add a c e |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12106
diff
changeset
|
7 $ hg commit -m "first" a c e |
14745
cae09a39b2d2
test-revert: add case for nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14726
diff
changeset
|
8 |
cae09a39b2d2
test-revert: add case for nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14726
diff
changeset
|
9 nothing changed |
cae09a39b2d2
test-revert: add case for nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14726
diff
changeset
|
10 |
cae09a39b2d2
test-revert: add case for nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14726
diff
changeset
|
11 $ hg revert |
cae09a39b2d2
test-revert: add case for nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14726
diff
changeset
|
12 abort: no files or directories specified |
14755
6ba51c81ff75
revert: improve hints on abort when reverting to parent without --all
Adrian Buehlmann <adrian@cadifra.com>
parents:
14745
diff
changeset
|
13 (use --all to revert all files) |
14745
cae09a39b2d2
test-revert: add case for nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14726
diff
changeset
|
14 [255] |
14767
aab323df2c44
test-revert: add revert --all case when nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14755
diff
changeset
|
15 $ hg revert --all |
14745
cae09a39b2d2
test-revert: add case for nothing changed
Adrian Buehlmann <adrian@cadifra.com>
parents:
14726
diff
changeset
|
16 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
17 Introduce some changes and revert them |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
18 -------------------------------------- |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
19 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
20 $ echo 123 > b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
21 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
22 $ hg status |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
23 ? b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
24 $ echo 12 > c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
25 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
26 $ hg status |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
27 M c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
28 ? b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
29 $ hg add b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
30 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
31 $ hg status |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
32 M c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
33 A b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
34 $ hg rm a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
35 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
36 $ hg status |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
37 M c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
38 A b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
39 R a |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
40 |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
41 revert removal of a file |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
42 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
43 $ hg revert a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
44 $ hg status |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
45 M c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
46 A b |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
47 |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
48 revert addition of a file |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
49 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
50 $ hg revert b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
51 $ hg status |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
52 M c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
53 ? b |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
54 |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
55 revert modification of a file (--no-backup) |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
56 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
57 $ hg revert --no-backup c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
58 $ hg status |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
59 ? b |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
60 |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
61 revert deletion (! status) of a added file |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
62 ------------------------------------------ |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
63 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
64 $ hg add b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
65 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
66 $ hg status b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
67 A b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
68 $ rm b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
69 $ hg status b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
70 ! b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
71 $ hg revert -v b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
72 forgetting b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
73 $ hg status b |
15521
117f9190c1ba
tests: hide 'No such file or directory' messages
Mads Kiilerich <mads@kiilerich.com>
parents:
15447
diff
changeset
|
74 b: * (glob) |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
75 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
76 $ ls |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
77 a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
78 c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
79 e |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
80 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
81 Test creation of backup (.orig) files |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
82 ------------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
83 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
84 $ echo z > e |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
85 $ hg revert --all -v |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
86 saving current version of e as e.orig |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
87 reverting e |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
88 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
89 revert on clean file (no change) |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
90 -------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
91 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
92 $ hg revert a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
93 no changes needed to a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
94 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
95 revert on an untracked file |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
96 --------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
97 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
98 $ echo q > q |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
99 $ hg revert q |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
100 file not managed: q |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
101 $ rm q |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
102 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
103 revert on file that does not exists |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
104 ----------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
105 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
106 $ hg revert notfound |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12106
diff
changeset
|
107 notfound: no such file in rev 334a9e57682c |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
108 $ touch d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
109 $ hg add d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
110 $ hg rm a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12106
diff
changeset
|
111 $ hg commit -m "second" |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
112 $ echo z > z |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
113 $ hg add z |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
114 $ hg st |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
115 A z |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
116 ? e.orig |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
117 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
118 revert to another revision (--rev) |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
119 ---------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
120 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
121 $ hg revert --all -r0 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
122 adding a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
123 removing d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
124 forgetting z |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
125 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
126 revert explicitly to parent (--rev) |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
127 ----------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
128 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
129 $ hg revert --all -rtip |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
130 forgetting a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
131 undeleting d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
132 $ rm a *.orig |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
133 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
134 revert to another revision (--rev) and exact match |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
135 -------------------------------------------------- |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
136 |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
137 exact match are more silent |
1447
508a3f559553
revert added and removed files to their normal state before reverting
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
138 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
139 $ hg revert -r0 a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
140 $ hg st a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
141 A a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
142 $ hg rm d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
143 $ hg st d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
144 R d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
145 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
146 should silently keep d removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
147 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
148 $ hg revert -r0 d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
149 $ hg st d |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
150 R d |
2157
1e82f2337498
make test-revert check executable bit.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2043
diff
changeset
|
151 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
152 $ hg update -C |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
153 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
154 |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
155 revert of exec bit |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
156 ------------------ |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
157 |
16886
8c1cf3e3fe42
test-revert: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
15521
diff
changeset
|
158 #if execbit |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
159 $ chmod +x c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
160 $ hg revert --all |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
161 reverting c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
162 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
163 $ test -x c || echo non-executable |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
164 non-executable |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
165 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
166 $ chmod +x c |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12106
diff
changeset
|
167 $ hg commit -m exe |
2157
1e82f2337498
make test-revert check executable bit.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2043
diff
changeset
|
168 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
169 $ chmod -x c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
170 $ hg revert --all |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
171 reverting c |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
172 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
173 $ test -x c && echo executable |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
174 executable |
16886
8c1cf3e3fe42
test-revert: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
15521
diff
changeset
|
175 #endif |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
176 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
177 $ cd .. |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
178 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
179 |
12399
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12316
diff
changeset
|
180 Issue241: update and revert produces inconsistent repositories |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
181 -------------------------------------------------------------- |
2982
890e285c52a1
revert: require --all to revert all files.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2272
diff
changeset
|
182 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
183 $ hg init a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
184 $ cd a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
185 $ echo a >> a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
186 $ hg commit -A -d '1 0' -m a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
187 adding a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
188 $ echo a >> a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
189 $ hg commit -d '2 0' -m a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
190 $ hg update 0 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
191 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
192 $ mkdir b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
193 $ echo b > b/b |
2272
e9a0ed9ed4d9
revert: fix corner case found by faheem mitha.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2157
diff
changeset
|
194 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
195 call `hg revert` with no file specified |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
196 --------------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
197 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
198 $ hg revert -rtip |
14542
afe0d4c24866
revert: drop requirement to use -r to revert with two parents
Matt Mackall <mpm@selenic.com>
parents:
12399
diff
changeset
|
199 abort: no files or directories specified |
14726
e0039716f3ea
revert: mention update in hint of abort when reverting to non-parent
Adrian Buehlmann <adrian@cadifra.com>
parents:
14713
diff
changeset
|
200 (use --all to revert all files, or 'hg update 1' to update) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
201 [255] |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
202 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
203 call `hg revert` with --all |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
204 --------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
205 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
206 $ hg revert --all -rtip |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
207 reverting a |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
208 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
209 |
12399
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12316
diff
changeset
|
210 Issue332: confusing message when reverting directory |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
211 ---------------------------------------------------- |
2982
890e285c52a1
revert: require --all to revert all files.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2272
diff
changeset
|
212 |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12106
diff
changeset
|
213 $ hg ci -A -m b |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
214 adding b/b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
215 created new head |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
216 $ echo foobar > b/b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
217 $ mkdir newdir |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
218 $ echo foo > newdir/newfile |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
219 $ hg add newdir/newfile |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
220 $ hg revert b newdir |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
221 reverting b/b (glob) |
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
222 forgetting newdir/newfile (glob) |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
223 $ echo foobar > b/b |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
224 $ hg revert . |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
225 reverting b/b (glob) |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
226 |
5230
bfd73b567b3d
When reverting a file which was renamed, also revert the old name
Brendan Cully <brendan@kublai.com>
parents:
4237
diff
changeset
|
227 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
228 reverting a rename target should revert the source |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
229 -------------------------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
230 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
231 $ hg mv a newa |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
232 $ hg revert newa |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
233 $ hg st a newa |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
234 ? newa |
5230
bfd73b567b3d
When reverting a file which was renamed, also revert the old name
Brendan Cully <brendan@kublai.com>
parents:
4237
diff
changeset
|
235 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
236 $ cd .. |
6031
7383384793fb
revert: don't assume ignored files will be returned in the unknown list
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5230
diff
changeset
|
237 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
238 $ hg init ignored |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
239 $ cd ignored |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
240 $ echo '^ignored$' > .hgignore |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
241 $ echo '^ignoreddir$' >> .hgignore |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
242 $ echo '^removed$' >> .hgignore |
6031
7383384793fb
revert: don't assume ignored files will be returned in the unknown list
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5230
diff
changeset
|
243 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
244 $ mkdir ignoreddir |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
245 $ touch ignoreddir/file |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
246 $ touch ignoreddir/removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
247 $ touch ignored |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
248 $ touch removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
249 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
250 4 ignored files (we will add/commit everything) |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
251 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
252 $ hg st -A -X .hgignore |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
253 I ignored |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
254 I ignoreddir/file |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
255 I ignoreddir/removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
256 I removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
257 $ hg ci -qAm 'add files' ignored ignoreddir/file ignoreddir/removed removed |
6031
7383384793fb
revert: don't assume ignored files will be returned in the unknown list
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5230
diff
changeset
|
258 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
259 $ echo >> ignored |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
260 $ echo >> ignoreddir/file |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
261 $ hg rm removed ignoreddir/removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
262 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
263 should revert ignored* and undelete *removed |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
264 -------------------------------------------- |
6031
7383384793fb
revert: don't assume ignored files will be returned in the unknown list
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5230
diff
changeset
|
265 |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
266 $ hg revert -a --no-backup |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
267 reverting ignored |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
268 reverting ignoreddir/file (glob) |
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
269 undeleting ignoreddir/removed (glob) |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
270 undeleting removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
271 $ hg st -mardi |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
272 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
273 $ hg up -qC |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
274 $ echo >> ignored |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
275 $ hg rm removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
276 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
277 should silently revert the named files |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
278 -------------------------------------- |
12106
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
279 |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
280 $ hg revert --no-backup ignored removed |
969176bec217
tests: unify test-revert
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6110
diff
changeset
|
281 $ hg st -mardi |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16886
diff
changeset
|
282 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
283 Reverting copy (issue3920) |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
284 -------------------------- |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
285 |
19129
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
286 someone set up us the copies |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
287 |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
288 $ rm .hgignore |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
289 $ hg update -C |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
290 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
291 $ hg mv ignored allyour |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
292 $ hg copy removed base |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
293 $ hg commit -m rename |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
294 |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
295 copies and renames, you have no chance to survive make your time (issue3920) |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
296 |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
297 $ hg update '.^' |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
298 1 files updated, 0 files merged, 2 files removed, 0 files unresolved |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
299 $ hg revert -rtip -a |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
300 adding allyour |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
301 adding base |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
302 removing ignored |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
303 $ hg status -C |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
304 A allyour |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
305 ignored |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
306 A base |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
307 removed |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
308 R ignored |
bd19587a3347
revert: ensure that copies and renames are honored (issue3920)
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
309 |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
310 Test revert of a file added by one side of the merge |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
311 ==================================================== |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
312 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
313 remove any pending change |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
314 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
315 $ hg revert --all |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
316 forgetting allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
317 forgetting base |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
318 undeleting ignored |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
319 $ hg purge --all --config extensions.purge= |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
320 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
321 Adds a new commit |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
322 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
323 $ echo foo > newadd |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
324 $ hg add newadd |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
325 $ hg commit -m 'other adds' |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
326 created new head |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
327 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
328 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
329 merge it with the other head |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
330 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
331 $ hg merge # merge 1 into 2 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
332 2 files updated, 0 files merged, 1 files removed, 0 files unresolved |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
333 (branch merge, don't forget to commit) |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
334 $ hg summary |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
335 parent: 2:b8ec310b2d4e tip |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
336 other adds |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
337 parent: 1:f6180deb8fbe |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
338 rename |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
339 branch: default |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
340 commit: 2 modified, 1 removed (merge) |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
341 update: (current) |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
342 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
343 clarifies who added what |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
344 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
345 $ hg status |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
346 M allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
347 M base |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
348 R ignored |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
349 $ hg status --change 'p1()' |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
350 A newadd |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
351 $ hg status --change 'p2()' |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
352 A allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
353 A base |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
354 R ignored |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
355 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
356 revert file added by p1() to p1() state |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
357 ----------------------------------------- |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
358 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
359 $ hg revert -r 'p1()' 'glob:newad?' |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
360 $ hg status |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
361 M allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
362 M base |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
363 R ignored |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
364 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
365 revert file added by p1() to p2() state |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
366 ------------------------------------------ |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
367 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
368 $ hg revert -r 'p2()' 'glob:newad?' |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
369 removing newadd |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
370 $ hg status |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
371 M allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
372 M base |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
373 R ignored |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
374 R newadd |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
375 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
376 revert file added by p2() to p2() state |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
377 ------------------------------------------ |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
378 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
379 $ hg revert -r 'p2()' 'glob:allyou?' |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
380 $ hg status |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
381 M allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
382 M base |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
383 R ignored |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
384 R newadd |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
385 |
22099
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
386 revert file added by p2() to p1() state |
9ed5e1053303
test-revert: improve comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21579
diff
changeset
|
387 ------------------------------------------ |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
388 |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
389 $ hg revert -r 'p1()' 'glob:allyou?' |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
390 removing allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
391 $ hg status |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
392 M base |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
393 R allyour |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
394 R ignored |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
395 R newadd |
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
396 |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
397 Systematic behavior validation of most possible cases |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
398 ===================================================== |
21573
4af19d39706e
revert: add a test case to reverting "add" during merges
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
19129
diff
changeset
|
399 |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
400 This section tests most of the possible combinations of working directory |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
401 changes and inter-revision changes. The number of possible cases is significant |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
402 but they all have a slighly different handling. So this section commits to |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
403 generating and testing all of them to allow safe refactoring of the revert code. |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
404 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
405 A python script is used to generate a file history for each combination of |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
406 changes between, on one side the working directory and its parent and on |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
407 the other side, changes between a revert target (--rev) and working directory |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
408 parent. The three states generated are: |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
409 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
410 - a "base" revision |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
411 - a "parent" revision |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
412 - the working directory (based on "parent") |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
413 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
414 The file generated have names of the form: |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
415 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
416 <changeset-state>_<working-copy-state> |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
417 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
418 Here, "changeset-state" conveys the state in "base" and "parent" (or the change |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
419 that happen between them), "working-copy-state" is self explanatory. |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
420 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
421 All known states are not tested yet. See inline documentation for details. |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
422 Special cases from merge and rename are not tested by this section. |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
423 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
424 There are also multiple cases where the current revert implementation is known to |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
425 slightly misbehave. |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
426 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
427 Write the python script to disk |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
428 ------------------------------- |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
429 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
430 $ cat << EOF > gen-revert-cases.py |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
431 > # generate proper file state to test revert behavior |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
432 > import sys |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
433 > import os |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
434 > |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
435 > # content of the file in "base" and "parent" |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
436 > # None means no file at all |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
437 > ctxcontent = { |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
438 > # clean: no change from base to parent |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
439 > 'clean': ['base', 'base'], |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
440 > # modified: file content change from base to parent |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
441 > 'modified': ['base', 'parent'], |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
442 > # added: file is missing from base and added in parent |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
443 > 'added': [None, 'parent'], |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
444 > # removed: file exist in base but is removed from parent |
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
445 > 'removed': ['base', None], |
22137
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
446 > # file exist neither in base not in parent |
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
447 > 'missing': [None, None], |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
448 > } |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
449 > |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
450 > # content of file in working copy |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
451 > wccontent = { |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
452 > # clean: wc content is the same as parent |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
453 > 'clean': lambda cc: cc[1], |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
454 > # revert: wc content is the same as base |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
455 > 'revert': lambda cc: cc[0], |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
456 > # wc: file exist with a content different from base and parent |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
457 > 'wc': lambda cc: 'wc', |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
458 > } |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
459 > |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
460 > # build the combination of possible states |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
461 > combination = [] |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
462 > for ctxkey in ctxcontent: |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
463 > for wckey in wccontent: |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
464 > filename = "%s_%s" % (ctxkey, wckey) |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
465 > combination.append((filename, ctxkey, wckey)) |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
466 > |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
467 > # make sure we have stable output |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
468 > combination.sort() |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
469 > |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
470 > # retrieve the state we must generate |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
471 > target = sys.argv[1] |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
472 > |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
473 > # compute file content |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
474 > content = [] |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
475 > for filename, ctxkey, wckey in combination: |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
476 > cc = ctxcontent[ctxkey] |
22127
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
477 > if target == 'filelist': |
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
478 > print filename |
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
479 > elif target == 'base': |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
480 > content.append((filename, cc[0])) |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
481 > elif target == 'parent': |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
482 > content.append((filename, cc[1])) |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
483 > elif target == 'wc': |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
484 > content.append((filename, wccontent[wckey](cc))) |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
485 > else: |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
486 > print >> sys.stderr, "unknown target:", target |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
487 > sys.exit(1) |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
488 > |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
489 > # write actual content |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
490 > for filename, data in content: |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
491 > if data is not None: |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
492 > f = open(filename, 'w') |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
493 > f.write(data + '\n') |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
494 > f.close() |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
495 > elif os.path.exists(filename): |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
496 > os.remove(filename) |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
497 > EOF |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
498 |
22127
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
499 check list of planned files |
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
500 |
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
501 $ python gen-revert-cases.py filelist |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
502 added_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
503 added_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
504 added_wc |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
505 clean_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
506 clean_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
507 clean_wc |
22137
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
508 missing_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
509 missing_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
510 missing_wc |
22127
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
511 modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
512 modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
513 modified_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
514 removed_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
515 removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
516 removed_wc |
22127
3163b8f8ff26
test-revert: display the list of all generated cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22126
diff
changeset
|
517 |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
518 Script to make a simple text version of the content |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
519 --------------------------------------------------- |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
520 |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
521 $ cat << EOF >> dircontent.py |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
522 > # generate a simple text view of the directory for easy comparison |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
523 > import os |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
524 > files = os.listdir('.') |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
525 > files.sort() |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
526 > for filename in files: |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
527 > if os.path.isdir(filename): |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
528 > continue |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
529 > content = open(filename).read() |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
530 > print '%-6s %s' % (content.strip(), filename) |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
531 > EOF |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
532 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
533 Generate appropriate repo state |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
534 ------------------------------- |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
535 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
536 $ hg init revert-ref |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
537 $ cd revert-ref |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
538 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
539 Generate base changeset |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
540 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
541 $ python ../gen-revert-cases.py base |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
542 $ hg addremove --similarity 0 |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
543 adding clean_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
544 adding clean_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
545 adding clean_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
546 adding modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
547 adding modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
548 adding modified_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
549 adding removed_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
550 adding removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
551 adding removed_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
552 $ hg status |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
553 A clean_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
554 A clean_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
555 A clean_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
556 A modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
557 A modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
558 A modified_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
559 A removed_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
560 A removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
561 A removed_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
562 $ hg commit -m 'base' |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
563 |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
564 (create a simple text version of the content) |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
565 |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
566 $ python ../dircontent.py > ../content-base.txt |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
567 $ cat ../content-base.txt |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
568 base clean_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
569 base clean_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
570 base clean_wc |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
571 base modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
572 base modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
573 base modified_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
574 base removed_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
575 base removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
576 base removed_wc |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
577 |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
578 Create parent changeset |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
579 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
580 $ python ../gen-revert-cases.py parent |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
581 $ hg addremove --similarity 0 |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
582 adding added_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
583 adding added_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
584 adding added_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
585 removing removed_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
586 removing removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
587 removing removed_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
588 $ hg status |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
589 M modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
590 M modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
591 M modified_wc |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
592 A added_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
593 A added_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
594 A added_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
595 R removed_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
596 R removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
597 R removed_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
598 $ hg commit -m 'parent' |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
599 |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
600 (create a simple text version of the content) |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
601 |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
602 $ python ../dircontent.py > ../content-parent.txt |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
603 $ cat ../content-parent.txt |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
604 parent added_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
605 parent added_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
606 parent added_wc |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
607 base clean_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
608 base clean_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
609 base clean_wc |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
610 parent modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
611 parent modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
612 parent modified_wc |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
613 |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
614 Setup working directory |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
615 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
616 $ python ../gen-revert-cases.py wc | cat |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
617 $ hg addremove --similarity 0 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
618 removing added_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
619 adding missing_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
620 adding removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
621 adding removed_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
622 $ hg status |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
623 M added_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
624 M clean_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
625 M modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
626 M modified_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
627 A missing_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
628 A removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
629 A removed_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
630 R added_revert |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
631 |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
632 $ hg status --rev 'desc("base")' |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
633 M clean_wc |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
634 M modified_clean |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
635 M modified_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
636 M removed_wc |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
637 A added_clean |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
638 A added_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
639 A missing_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
640 R removed_clean |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
641 |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
642 (create a simple text version of the content) |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
643 |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
644 $ python ../dircontent.py > ../content-wc.txt |
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
645 $ cat ../content-wc.txt |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
646 parent added_clean |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
647 wc added_wc |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
648 base clean_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
649 base clean_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
650 wc clean_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
651 wc missing_wc |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
652 parent modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
653 base modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
654 wc modified_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
655 base removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
656 wc removed_wc |
22126
651b2149f1e7
test-revert: also create a text version of the snapshot
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22124
diff
changeset
|
657 |
22124
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
658 $ cd .. |
e51784473fc0
test-revert: prepare methodical testing of revert cases
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22123
diff
changeset
|
659 |
22128
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
660 Test revert --all to parent content |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
661 ----------------------------------- |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
662 |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
663 (setup from reference repo) |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
664 |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
665 $ cp -r revert-ref revert-parent-all |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
666 $ cd revert-parent-all |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
667 |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
668 check revert output |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
669 |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
670 $ hg revert --all |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
671 undeleting added_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
672 reverting added_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
673 reverting clean_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
674 forgetting missing_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
675 reverting modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
676 reverting modified_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
677 forgetting removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
678 forgetting removed_wc |
22128
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
679 |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
680 Compare resulting directory with revert target. |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
681 |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
682 The diff is filtered to include change only. The only difference should be |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
683 additional `.orig` backup file when applicable. |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
684 |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
685 $ python ../dircontent.py > ../content-parent-all.txt |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
686 $ cd .. |
db23fb4e210d
test-revert: add methodical revert to parent for working directory
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22127
diff
changeset
|
687 $ diff -U 0 -- content-parent.txt content-parent-all.txt | grep _ |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
688 +wc added_wc.orig |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
689 +wc clean_wc.orig |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
690 +wc missing_wc |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
691 +base modified_revert.orig |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
692 +wc modified_wc.orig |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
693 +base removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
694 +wc removed_wc |
22129
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
695 |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
696 Test revert --all to "base" content |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
697 ----------------------------------- |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
698 |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
699 (setup from reference repo) |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
700 |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
701 $ cp -r revert-ref revert-base-all |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
702 $ cd revert-base-all |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
703 |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
704 check revert output |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
705 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
706 Misbehavior: |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
707 |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
708 - report "reverting" when file needs no changes |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
709 | |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
710 | - reverting modified_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
711 | - reverting removed_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
712 |
22129
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
713 $ hg revert --all --rev 'desc(base)' |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
714 removing added_clean |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
715 removing added_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
716 reverting clean_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
717 forgetting missing_wc |
22129
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
718 reverting modified_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
719 reverting modified_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
720 reverting modified_wc |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
721 adding removed_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
722 reverting removed_revert |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
723 reverting removed_wc |
22129
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
724 |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
725 Compare resulting directory with revert target. |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
726 |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
727 The diff is filtered to include change only. The only difference should be |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
728 additional `.orig` backup file when applicable. |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
729 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
730 Misbehavior: |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
731 |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
732 - no backup for |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
733 | - added_wc (DATA LOSS) |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
734 |
22129
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
735 $ python ../dircontent.py > ../content-base-all.txt |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
736 $ cd .. |
f0147ff1109f
test-revert: add methodical revert to "base"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22128
diff
changeset
|
737 $ diff -U 0 -- content-base.txt content-base-all.txt | grep _ |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
738 +wc clean_wc.orig |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
739 +wc missing_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
740 +wc modified_wc.orig |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
741 +wc removed_wc.orig |
22130
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
742 |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
743 Test revert to parent content with explicit file name |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
744 ----------------------------------------------------- |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
745 |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
746 (setup from reference repo) |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
747 |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
748 $ cp -r revert-ref revert-parent-explicit |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
749 $ cd revert-parent-explicit |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
750 |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
751 revert all files individually and check the output |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
752 (output is expected to be different than in the --all case) |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
753 |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
754 $ for file in `python ../gen-revert-cases.py filelist`; do |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
755 > echo '### revert for:' $file; |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
756 > hg revert $file; |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
757 > echo |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
758 > done |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
759 ### revert for: added_clean |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
760 no changes needed to added_clean |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
761 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
762 ### revert for: added_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
763 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
764 ### revert for: added_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
765 |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
766 ### revert for: clean_clean |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
767 no changes needed to clean_clean |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
768 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
769 ### revert for: clean_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
770 no changes needed to clean_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
771 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
772 ### revert for: clean_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
773 |
22137
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
774 ### revert for: missing_clean |
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
775 missing_clean: no such file in rev * (glob) |
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
776 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
777 ### revert for: missing_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
778 missing_revert: no such file in rev * (glob) |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
779 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
780 ### revert for: missing_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
781 |
22130
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
782 ### revert for: modified_clean |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
783 no changes needed to modified_clean |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
784 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
785 ### revert for: modified_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
786 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
787 ### revert for: modified_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
788 |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
789 ### revert for: removed_clean |
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
790 removed_clean: no such file in rev * (glob) |
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
791 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
792 ### revert for: removed_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
793 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
794 ### revert for: removed_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
795 |
22130
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
796 |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
797 check resulting directory againt the --all run |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
798 (There should be no difference) |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
799 |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
800 $ python ../dircontent.py > ../content-parent-explicit.txt |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
801 $ cd .. |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
802 $ diff -U 0 -- content-parent-all.txt content-parent-explicit.txt | grep _ |
78abb9a42830
test-revert: add methodical revert with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22129
diff
changeset
|
803 [1] |
22131
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
804 |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
805 Test revert to "base" content with explicit file name |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
806 ----------------------------------------------------- |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
807 |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
808 (setup from reference repo) |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
809 |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
810 $ cp -r revert-ref revert-base-explicit |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
811 $ cd revert-base-explicit |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
812 |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
813 revert all files individually and check the output |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
814 (output is expected to be different than in the --all case) |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
815 |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
816 Misbehavior: |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
817 |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
818 - fails to report no change to revert for |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
819 | |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
820 | - clean_clean |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
821 | - added_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
822 | - clean_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
823 | - modified_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
824 | - removed_revert |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
825 |
22131
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
826 $ for file in `python ../gen-revert-cases.py filelist`; do |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
827 > echo '### revert for:' $file; |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
828 > hg revert $file --rev 'desc(base)'; |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
829 > echo |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
830 > done |
22133
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
831 ### revert for: added_clean |
d732ff677b96
test-revert: add case where file is added between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22131
diff
changeset
|
832 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
833 ### revert for: added_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
834 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
835 ### revert for: added_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
836 |
22135
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
837 ### revert for: clean_clean |
37d2bd2c04f6
test-revert: add case where file is unchanged between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22133
diff
changeset
|
838 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
839 ### revert for: clean_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
840 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
841 ### revert for: clean_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
842 |
22137
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
843 ### revert for: missing_clean |
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
844 missing_clean: no such file in rev * (glob) |
2cfe5ec47803
test-revert: add case where file exists neither in "base" nor in "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22136
diff
changeset
|
845 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
846 ### revert for: missing_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
847 missing_revert: no such file in rev * (glob) |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
848 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
849 ### revert for: missing_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
850 |
22131
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
851 ### revert for: modified_clean |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
852 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
853 ### revert for: modified_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
854 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
855 ### revert for: modified_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
856 |
22136
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
857 ### revert for: removed_clean |
a29574cb8552
test-revert: add case where the file is removed between "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22135
diff
changeset
|
858 |
22138
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
859 ### revert for: removed_revert |
80206e63c3cc
test-revert: add case where wc content is already reverted to base content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22137
diff
changeset
|
860 |
22139
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
861 ### revert for: removed_wc |
1ecd6f1f9869
test-revert: add case where wc content is different from "base" and "parent"
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22138
diff
changeset
|
862 |
22131
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
863 |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
864 check resulting directory againt the --all run |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
865 (There should be no difference) |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
866 |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
867 $ python ../dircontent.py > ../content-base-explicit.txt |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
868 $ cd .. |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
869 $ diff -U 0 -- content-base-all.txt content-base-explicit.txt | grep _ |
8768342af0cd
test-revert: add methodical revert to "base" with explicit file path
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22130
diff
changeset
|
870 [1] |