Mercurial > hg
annotate tests/test-extdiff @ 7104:9514cbb6e4f6
bdiff: normalize the diff (issue1295)
When the common part of a diff can be moved forward, move it forward.
Otherwise we don't get deterministic results (it would depends on the way we
split for the recursion).
That way we get identical hunks when doing the same change, it helps to solve
issue1295 (inconsistent diffs on different side during a merge).
author | Benoit Boissinot <benoit.boissinot@ens-lyon.org> |
---|---|
date | Tue, 14 Oct 2008 20:13:53 +0200 |
parents | d4fa6bafc43a |
children | e81e6c996e99 |
rev | line source |
---|---|
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
1 #!/bin/sh |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
2 |
2990
61fcd9fac434
Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2932
diff
changeset
|
3 echo "[extensions]" >> $HGRCPATH |
61fcd9fac434
Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2932
diff
changeset
|
4 echo "extdiff=" >> $HGRCPATH |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
5 |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
6 hg init a |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
7 cd a |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
8 echo a > a |
5137
2be225ea5722
extdiff: do single file diffs from the wc with no copy
Brad Schick <schickb@gmail.com>
parents:
3751
diff
changeset
|
9 echo b > b |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
10 hg add |
5137
2be225ea5722
extdiff: do single file diffs from the wc with no copy
Brad Schick <schickb@gmail.com>
parents:
3751
diff
changeset
|
11 # should diff cloned directories |
3751
797c6e70092b
Don't require a diff which accepts the -N option.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3330
diff
changeset
|
12 hg extdiff -o -r $opt |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
13 |
2990
61fcd9fac434
Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2932
diff
changeset
|
14 echo "[extdiff]" >> $HGRCPATH |
61fcd9fac434
Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2932
diff
changeset
|
15 echo "cmd.falabala=echo" >> $HGRCPATH |
61fcd9fac434
Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2932
diff
changeset
|
16 echo "opts.falabala=diffing" >> $HGRCPATH |
2906
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
17 |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
18 hg falabala |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
19 |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
20 hg help falabala |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
21 |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
22 hg ci -d '0 0' -mtest1 |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
23 |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
24 echo b >> a |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
25 hg ci -d '1 0' -mtest2 |
453097750fbf
extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
26 |
5143
d4fa6bafc43a
Remove trailing spaces, fix indentation
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5137
diff
changeset
|
27 # should diff cloned files directly |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
28 hg falabala -r 0:1 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
29 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
30 # test diff during merge |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
31 hg update 0 |
5137
2be225ea5722
extdiff: do single file diffs from the wc with no copy
Brad Schick <schickb@gmail.com>
parents:
3751
diff
changeset
|
32 echo c >> c |
2be225ea5722
extdiff: do single file diffs from the wc with no copy
Brad Schick <schickb@gmail.com>
parents:
3751
diff
changeset
|
33 hg add c |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
34 hg ci -m "new branch" -d '1 0' |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
35 hg update -C 1 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2990
diff
changeset
|
36 hg merge tip |
5143
d4fa6bafc43a
Remove trailing spaces, fix indentation
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5137
diff
changeset
|
37 # should diff cloned file against wc file |
5137
2be225ea5722
extdiff: do single file diffs from the wc with no copy
Brad Schick <schickb@gmail.com>
parents:
3751
diff
changeset
|
38 hg falabala > out || echo "diff-like tools yield a non-zero exit code" |
2be225ea5722
extdiff: do single file diffs from the wc with no copy
Brad Schick <schickb@gmail.com>
parents:
3751
diff
changeset
|
39 # cleanup the output since the wc is a tmp directory |
2be225ea5722
extdiff: do single file diffs from the wc with no copy
Brad Schick <schickb@gmail.com>
parents:
3751
diff
changeset
|
40 sed 's:\(.* \).*\(\/test-extdiff\):\1[tmp]\2:' out |