tests/test-tag
author Martijn Pieters <mj@zopatista.com>
Tue, 28 Apr 2009 17:17:54 +0200
changeset 8245 0eade101f762
parent 6321 55ba3bc5b8fd
child 8417 39cf453da958
permissions -rwxr-xr-x
Don't use sed -r; instead use old-style regexp Rev d895158fe8af introduced some sed -r tests, but -r is only available on GNU sed, while BSD sed uses -E. Better to use old-style regular expressions, that way the tests work on all sed variants.

#!/bin/sh

hg init
echo a > a
hg add a
hg commit -m "test" -d "1000000 0"
hg history
hg tag -d "1000000 0" "bleah"
hg history

echo foo >> .hgtags
hg tag -d "1000000 0" "bleah2" || echo "failed"

hg revert .hgtags
hg tag -d "1000000 0" -r 0 x y z y y z || echo "failed"
hg tag -d "1000000 0" tap nada dot tip null . || echo "failed"
hg tag -d "1000000 0" "bleah" || echo "failed"
hg tag -d "1000000 0" "blecch" "bleah" || echo "failed"

hg tag -d "1000000 0" --remove "blecch" || echo "failed"
hg tag -d "1000000 0" --remove "bleah" "blecch" "blough" || echo "failed"

hg tag -d "1000000 0" -r 0 "bleah0"
hg tag -l -d "1000000 0" -r 1 "bleah1"
hg tag -d "1000000 0" gack gawk gorp
hg tag -d "1000000 0" -f gack
hg tag -d "1000000 0" --remove gack gorp

cat .hgtags
cat .hg/localtags

hg update 0
hg tag -d "1000000 0" "foobar"
cat .hgtags
cat .hg/localtags

hg tag -l 'xx
newline'
hg tag -l 'xx:xx'

echo % issue 601
python << EOF
f = file('.hg/localtags'); last = f.readlines()[-1][:-1]; f.close()
f = file('.hg/localtags', 'w'); f.write(last); f.close()
EOF
cat .hg/localtags
hg tag -l localnewline
cat .hg/localtags

python << EOF
f = file('.hgtags'); last = f.readlines()[-1][:-1]; f.close()
f = file('.hgtags', 'w'); f.write(last); f.close()
EOF
hg ci -d '1000000 0' -m'broken manual edit of .hgtags'
cat .hgtags
hg tag -d '1000000 0' newline
cat .hgtags