tests/test-mq-qdiff
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
Tue, 14 Oct 2008 20:13:53 +0200
changeset 7104 9514cbb6e4f6
parent 6668 034f444902d9
child 9725 3f522d2fa633
permissions -rwxr-xr-x
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).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2916
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     1
#!/bin/sh
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     2
2990
61fcd9fac434 Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2917
diff changeset
     3
echo "[extensions]" >> $HGRCPATH
61fcd9fac434 Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2917
diff changeset
     4
echo "mq=" >> $HGRCPATH
2916
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     5
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     6
echo % init
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     7
hg init a
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     8
cd a
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     9
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    10
echo % commit
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    11
echo 'base' > base
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    12
hg ci -Ambase -d '1 0'
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    13
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    14
echo % qnew mqbase
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    15
hg qnew -mmqbase mqbase
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    16
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    17
echo % qrefresh
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    18
echo 'patched' > base
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    19
hg qrefresh
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    20
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    21
echo % qdiff
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    22
hg qdiff | sed -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    23
               -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/"
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    24
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    25
echo % qdiff dirname
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    26
hg qdiff . | sed -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \
8ca608c1eb02 tests: new test for mq qdiff command
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    27
                 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/"
6668
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    28
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    29
echo % qdiff filename
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    30
hg qdiff --nodates base
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    31
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    32
echo % revert
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    33
hg revert -a
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    34
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    35
echo % qpop
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    36
hg qpop
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    37
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    38
echo % qdelete mqbase
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    39
hg qdelete mqbase
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    40
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    41
echo % commit 2
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    42
printf '1\n2\n3\n4\nhello world\ngoodbye world\n7\n8\n9\n' > lines
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    43
hg ci -Amlines -d '2 0'
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    44
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    45
echo % qnew 2
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    46
hg qnew -mmqbase2 mqbase2
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    47
printf '\n\n1\n2\n3\n4\nhello  world\n     goodbye world\n7\n8\n9\n' > lines
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    48
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    49
echo % qdiff -U 1
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    50
hg qdiff --nodates -U 1
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    51
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    52
echo % qdiff -b
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    53
hg qdiff --nodates -b
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    54
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    55
echo % qdiff -U 1 -B
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    56
hg qdiff --nodates -U 1 -B
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    57
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    58
echo qdiff -w
034f444902d9 mq: qdiff: support all diffopts
Jason Orendorff <jorendorff@mozilla.com>
parents: 2990
diff changeset
    59
hg qdiff --nodates -w