Mercurial > hg
annotate tests/test-children.t @ 24213:e0c1328df872
workingctx: use normal dirs() instead of dirstate.dirs()
The workingctx class was using dirstate.dirs() as it's implementation. The
sparse extension maintains a pruned down version of the dirstate, so this
resulted in the workingctx reporting an incorrect listing of directories
during merge calculations (it was detecting directory renames when it
shouldn't have).
The fix is to use the default implementation, which uses workingctx._manifest,
which unions the manifest with the dirstate to produce the correct overall
picture. This also produces more accurate output since it will no longer
return directories that have been entirely deleted in the dirstate.
Tests will be added to the sparse extension to detect regressions for this.
author | Durham Goode <durham@fb.com> |
---|---|
date | Thu, 05 Mar 2015 22:16:28 -0800 |
parents | f2719b387380 |
children | 3eb9045396b0 |
rev | line source |
---|---|
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
1 test children command |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
3 $ cat <<EOF >> $HGRCPATH |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
4 > [extensions] |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
5 > children = |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
6 > EOF |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
7 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
8 init |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
9 $ hg init t |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
10 $ cd t |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
11 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
12 no working directory |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
13 $ hg children |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
14 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
15 setup |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
16 $ echo 0 > file0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
17 $ hg ci -qAm 0 -d '0 0' |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
18 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
19 $ echo 1 > file1 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
20 $ hg ci -qAm 1 -d '1 0' |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
21 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
22 $ echo 2 >> file0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
23 $ hg ci -qAm 2 -d '2 0' |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
24 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
25 $ hg co null |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
26 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
27 $ echo 3 > file3 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
28 $ hg ci -qAm 3 -d '3 0' |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
29 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
30 hg children at revision 3 (tip) |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
31 $ hg children |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
32 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
33 $ hg co null |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
34 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
35 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
36 hg children at nullrev (should be 0 and 3) |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
37 $ hg children |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
38 changeset: 0:4df8521a7374 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
39 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
40 date: Thu Jan 01 00:00:00 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
41 summary: 0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
42 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
43 changeset: 3:e2962852269d |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
44 tag: tip |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
45 parent: -1:000000000000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
46 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
47 date: Thu Jan 01 00:00:03 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
48 summary: 3 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
49 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
50 $ hg co 1 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
51 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
52 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
53 hg children at revision 1 (should be 2) |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
54 $ hg children |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
55 changeset: 2:8f5eea5023c2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
56 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
57 date: Thu Jan 01 00:00:02 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
58 summary: 2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
59 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
60 $ hg co 2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
61 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
62 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
63 hg children at revision 2 (other head) |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
64 $ hg children |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
65 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
66 $ for i in null 0 1 2 3; do |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
67 > echo "hg children -r $i" |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
68 > hg children -r $i |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
69 > done |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
70 hg children -r null |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
71 changeset: 0:4df8521a7374 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
72 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
73 date: Thu Jan 01 00:00:00 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
74 summary: 0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
75 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
76 changeset: 3:e2962852269d |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
77 tag: tip |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
78 parent: -1:000000000000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
79 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
80 date: Thu Jan 01 00:00:03 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
81 summary: 3 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
82 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
83 hg children -r 0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
84 changeset: 1:708c093edef0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
85 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
86 date: Thu Jan 01 00:00:01 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
87 summary: 1 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
88 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
89 hg children -r 1 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
90 changeset: 2:8f5eea5023c2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
91 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
92 date: Thu Jan 01 00:00:02 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
93 summary: 2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
94 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
95 hg children -r 2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
96 hg children -r 3 |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
97 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
98 hg children -r 0 file0 (should be 2) |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
99 $ hg children -r 0 file0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
100 changeset: 2:8f5eea5023c2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
101 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
102 date: Thu Jan 01 00:00:02 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
103 summary: 2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
104 |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
105 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
106 hg children -r 1 file0 (should be 2) |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
107 $ hg children -r 1 file0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
108 changeset: 2:8f5eea5023c2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
109 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
110 date: Thu Jan 01 00:00:02 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
111 summary: 2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
112 |
4783
8b90d763ea90
Add extension to provide the 'hg children' command (with tests)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
113 |
11920
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
114 $ hg co 0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
115 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
116 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
117 hg children file0 at revision 0 (should be 2) |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
118 $ hg children file0 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
119 changeset: 2:8f5eea5023c2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
120 user: test |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
121 date: Thu Jan 01 00:00:02 1970 +0000 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
122 summary: 2 |
d0a7e700b5d1
tests: unify test-children
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
10119
diff
changeset
|
123 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
11920
diff
changeset
|
124 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
11920
diff
changeset
|
125 $ cd .. |