annotate tests/test-diff-copy-depth.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 bca69641de61
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12150
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
1 $ for i in aaa zzz; do
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
2 > hg init t
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
3 > cd t
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
4 >
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
5 > echo
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
6 > echo "-- With $i"
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
7 >
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
8 > touch file
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
9 > hg add file
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
10 > hg ci -m "Add"
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
11 >
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
12 > hg cp file $i
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
13 > hg ci -m "a -> $i"
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
14 >
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
15 > hg cp $i other-file
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
16 > echo "different" >> $i
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
17 > hg ci -m "$i -> other-file"
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
18 >
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
19 > hg cp other-file somename
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
20 >
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
21 > echo "Status":
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
22 > hg st -C
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
23 > echo
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
24 > echo "Diff:"
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
25 > hg diff -g
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
26 >
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
27 > cd ..
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
28 > rm -rf t
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
29 > done
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
30
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
31 -- With aaa
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
32 Status:
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
33 A somename
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
34 other-file
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
35
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
36 Diff:
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
37 diff --git a/other-file b/somename
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
38 copy from other-file
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
39 copy to somename
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
40
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
41 -- With zzz
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
42 Status:
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
43 A somename
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
44 other-file
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
45
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
46 Diff:
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
47 diff --git a/other-file b/somename
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
48 copy from other-file
bca69641de61 tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents: 6489
diff changeset
49 copy to somename
6424
d8f44384c3ee copies: sort old names by depth
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
50
d8f44384c3ee copies: sort old names by depth
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
51