Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/test-copy2 @ 4135:6cb6cfe43c5d
Avoid some false positives for addremove -s
The original code uses the similary score
1 - len(diff(after, before)) / len(after)
The diff can at most be the size of the 'before' file, so any small
'before' file would be considered very similar. Removing an empty file
would cause all files added in the same revision to be considered
copies of the removed file.
This changes the metric to
bytes_overlap(before, after) / len(before + after)
i.e. the actual percentage of bytes shared between the two files.
author | Erling Ellingsen <erlingalf@gmail.com> |
---|---|
date | Sun, 18 Feb 2007 20:39:25 +0100 |
parents | c0b449154a90 |
children | de612b5f8d59 |
rev | line source |
---|---|
1117 | 1 #!/bin/sh |
2 | |
3 hg init | |
4 echo foo > foo | |
5 hg add foo | |
6 hg commit -m1 -d"0 0" | |
7 | |
8 echo "# should show copy" | |
9 hg copy foo bar | |
1168
235e0effa672
Fixed two tests to run with bourne shell.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1127
diff
changeset
|
10 hg debugstate|grep '^copy' |
1117 | 11 |
12 echo "# shouldn't show copy" | |
13 hg commit -m2 -d"0 0" | |
1168
235e0effa672
Fixed two tests to run with bourne shell.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1127
diff
changeset
|
14 hg debugstate|grep '^copy' |
1117 | 15 |
16 echo "# should match" | |
3853
c0b449154a90
switch to the .hg/store layout, fix the tests
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1252
diff
changeset
|
17 hg debugindex .hg/store/data/foo.i |
1117 | 18 hg debugrename bar |
19 | |
20 echo bleah > foo | |
21 echo quux > bar | |
22 hg commit -m3 -d"0 0" | |
23 | |
24 echo "# should not be renamed" | |
25 hg debugrename bar | |
26 | |
1249
a5355fa5e33a
Fix up copy command to behave more like regular "cp".
Bryan O'Sullivan <bos@serpentine.com>
parents:
1168
diff
changeset
|
27 hg copy -f foo bar |
1117 | 28 echo "# should show copy" |
1168
235e0effa672
Fixed two tests to run with bourne shell.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1127
diff
changeset
|
29 hg debugstate|grep '^copy' |
1117 | 30 hg commit -m3 -d"0 0" |
31 | |
32 echo "# should show no parents for tip" | |
3853
c0b449154a90
switch to the .hg/store layout, fix the tests
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1252
diff
changeset
|
33 hg debugindex .hg/store/data/bar.i |
1117 | 34 echo "# should match" |
3853
c0b449154a90
switch to the .hg/store layout, fix the tests
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1252
diff
changeset
|
35 hg debugindex .hg/store/data/foo.i |
1117 | 36 hg debugrename bar |
37 | |
38 echo "# should show no copies" | |
1168
235e0effa672
Fixed two tests to run with bourne shell.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1127
diff
changeset
|
39 hg debugstate|grep '^copy' |
1127
19b048da4da9
Fixed test-copy2 with only looking at copied files.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1117
diff
changeset
|
40 |
19b048da4da9
Fixed test-copy2 with only looking at copied files.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1117
diff
changeset
|
41 exit 0 |