##// END OF EJS Templates
merge with stable
merge with stable

File last commit:

r11249:0bb67503 stable
r12315:ca58f647 merge default
Show More
test-eol-update
83 lines | 1.2 KiB | text/plain | TextLexer
#!/bin/sh
cat > $HGRCPATH <<EOF
[diff]
git = 1
EOF
seteol () {
if [ $1 = "LF" ]; then
EOL='\n'
else
EOL='\r\n'
fi
}
makerepo () {
echo
echo "# ==== setup repository ===="
echo '% hg init'
hg init repo
cd repo
cat > .hgeol <<EOF
[patterns]
**.txt = LF
EOF
printf "first\nsecond\nthird\n" > a.txt
hg commit --addremove -m 'LF commit'
cat > .hgeol <<EOF
[patterns]
**.txt = CRLF
EOF
printf "first\r\nsecond\r\nthird\r\n" > a.txt
hg commit -m 'CRLF commit'
cd ..
}
dotest () {
seteol $1
echo
echo "% hg clone repo repo-$1"
hg clone --noupdate repo repo-$1
cd repo-$1
cat > .hg/hgrc <<EOF
[extensions]
eol =
EOF
hg update
echo '% printrepr.py a.txt (before)'
python $TESTDIR/printrepr.py < a.txt
printf "first${EOL}third${EOL}" > a.txt
echo '% printrepr.py a.txt (after)'
python $TESTDIR/printrepr.py < a.txt
echo '% hg diff'
hg diff | python $TESTDIR/printrepr.py
echo '% hg update 0'
hg update 0
echo '% printrepr.py a.txt'
python $TESTDIR/printrepr.py < a.txt
echo '% hg diff'
hg diff | python $TESTDIR/printrepr.py
cd ..
rm -r repo-$1
}
makerepo
dotest LF
dotest CRLF
rm -r repo