Mercurial > hg
view tests/test-bundle-r @ 9827:4fe9ca519637
mdiff: fix diff -b/B/w on mixed whitespace hunks (issue127)
Previous code was computing hunks then checking if these hunks could be ignored
when taking whitespace/blank-lines options in accounts. This approach is simple
but fails with hunks containing both whitespace and non-whitespace changes, the
whole hunk is emitted while it can be mostly made of whitespace. The new
version normalize the whitespaces before hunk generation, and test for
blank-lines afterwards.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Wed, 11 Nov 2009 18:31:42 +0100 |
parents | c0b449154a90 |
children | bb508b312359 |
line wrap: on
line source
#!/bin/sh hg init test cd test cat >>afile <<EOF 0 EOF hg add afile hg commit -m "0.0" -d "1000000 0" cat >>afile <<EOF 1 EOF hg commit -m "0.1" -d "1000000 0" cat >>afile <<EOF 2 EOF hg commit -m "0.2" -d "1000000 0" cat >>afile <<EOF 3 EOF hg commit -m "0.3" -d "1000000 0" hg update -C 0 cat >>afile <<EOF 1 EOF hg commit -m "1.1" -d "1000000 0" cat >>afile <<EOF 2 EOF hg commit -m "1.2" -d "1000000 0" cat >fred <<EOF a line EOF cat >>afile <<EOF 3 EOF hg add fred hg commit -m "1.3" -d "1000000 0" hg mv afile adifferentfile hg commit -m "1.3m" -d "1000000 0" hg update -C 3 hg mv afile anotherfile hg commit -m "0.3m" -d "1000000 0" hg debugindex .hg/store/data/afile.i hg debugindex .hg/store/data/adifferentfile.i hg debugindex .hg/store/data/anotherfile.i hg debugindex .hg/store/data/fred.i hg debugindex .hg/store/00manifest.i hg verify cd .. for i in 0 1 2 3 4 5 6 7 8; do mkdir test-"$i" hg --cwd test-"$i" init hg -R test bundle -r "$i" test-"$i".hg test-"$i" cd test-"$i" hg unbundle ../test-"$i".hg hg verify hg tip -q cd .. done cd test-8 hg pull ../test-7 hg verify hg rollback cd .. echo % should fail hg -R test bundle --base 2 -r tip test-bundle-branch1.hg test-3 hg -R test bundle -r tip test-bundle-branch1.hg hg -R test bundle --base 2 -r tip test-bundle-branch1.hg hg -R test bundle --base 2 -r 7 test-bundle-branch2.hg hg -R test bundle --base 2 test-bundle-all.hg hg -R test bundle --base 3 -r tip test-bundle-should-fail.hg # issue76 msg2163 hg -R test bundle --base 3 -r 3 -r 3 test-bundle-cset-3.hg hg clone test-2 test-9 cd test-9 echo % 2 hg tip -q hg unbundle ../test-bundle-should-fail.hg echo % 2 hg tip -q hg unbundle ../test-bundle-all.hg echo % 8 hg tip -q hg verify hg rollback echo % 2 hg tip -q hg unbundle ../test-bundle-branch1.hg echo % 4 hg tip -q hg verify hg rollback hg unbundle ../test-bundle-branch2.hg echo % 6 hg tip -q hg verify cd ../test hg merge 7 hg ci -m merge -d "1000000 0" cd .. hg -R test bundle --base 2 test-bundle-head.hg hg clone test-2 test-10 cd test-10 hg unbundle ../test-bundle-head.hg echo % 9 hg tip -q hg verify