test-win32text
144 lines
| 2.5 KiB
| text/plain
|
TextLexer
/ tests / test-win32text
Jesse Glick
|
r5675 | #!/bin/sh | ||
Bryan O'Sullivan
|
r8147 | hg init t | ||
cd t | ||||
Thomas Arendsen Hein
|
r6210 | cat > unix2dos.py <<EOF | ||
Patrick Mezard
|
r5680 | import sys | ||
for path in sys.argv[1:]: | ||||
data = file(path, 'rb').read() | ||||
data = data.replace('\n', '\r\n') | ||||
file(path, 'wb').write(data) | ||||
EOF | ||||
Jesse Glick
|
r5967 | cat > print.py <<EOF | ||
import sys | ||||
print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>')) | ||||
EOF | ||||
Jesse Glick
|
r5675 | echo '[hooks]' >> .hg/hgrc | ||
echo 'pretxncommit.crlf = python:hgext.win32text.forbidcrlf' >> .hg/hgrc | ||||
echo 'pretxnchangegroup.crlf = python:hgext.win32text.forbidcrlf' >> .hg/hgrc | ||||
cat .hg/hgrc | ||||
echo | ||||
echo hello > f | ||||
hg add f | ||||
Bryan O'Sullivan
|
r8147 | echo commit should succeed | ||
Martin Geisler
|
r8167 | hg ci -m 1 | ||
Jesse Glick
|
r5675 | echo | ||
Bryan O'Sullivan
|
r8147 | hg clone . ../zoz | ||
cp .hg/hgrc ../zoz/.hg | ||||
Patrick Mezard
|
r5680 | python unix2dos.py f | ||
Bryan O'Sullivan
|
r8147 | echo commit should fail | ||
Martin Geisler
|
r8167 | hg ci -m 2.1 | ||
Bryan O'Sullivan
|
r8147 | echo | ||
mv .hg/hgrc .hg/hgrc.bak | ||||
echo commits should succeed | ||||
Martin Geisler
|
r8167 | hg ci -m 2 | ||
Bryan O'Sullivan
|
r8147 | hg cp f g | ||
Martin Geisler
|
r8167 | hg ci -m 2.2 | ||
Jesse Glick
|
r5675 | echo | ||
Bryan O'Sullivan
|
r8147 | echo push should fail | ||
hg push ../zoz | ||||
echo | ||||
mv .hg/hgrc.bak .hg/hgrc | ||||
echo hello > f | ||||
hg rm g | ||||
echo commit should succeed | ||||
Martin Geisler
|
r8167 | hg ci -m 2.3 | ||
Bryan O'Sullivan
|
r8147 | echo | ||
echo push should succeed | ||||
hg push ../zoz | ||||
echo | ||||
echo and now for something completely different | ||||
Jesse Glick
|
r5675 | mkdir d | ||
echo hello > d/f2 | ||||
Patrick Mezard
|
r5680 | python unix2dos.py d/f2 | ||
Jesse Glick
|
r5675 | hg add d/f2 | ||
Martin Geisler
|
r8167 | hg ci -m 3 | ||
Jesse Glick
|
r5675 | hg revert -a | ||
rm d/f2 | ||||
echo | ||||
hg rem f | ||||
Martin Geisler
|
r8167 | hg ci -m 4 | ||
Jesse Glick
|
r5675 | echo | ||
Patrick Mezard
|
r5680 | python -c 'file("bin", "wb").write("hello\x00\x0D\x0A")' | ||
Jesse Glick
|
r5675 | hg add bin | ||
Martin Geisler
|
r8167 | hg ci -m 5 | ||
Jesse Glick
|
r5675 | hg log -v | ||
echo | ||||
hg clone . dupe | ||||
echo | ||||
for x in a b c d; do echo content > dupe/$x; done | ||||
hg -R dupe add | ||||
Patrick Mezard
|
r5680 | python unix2dos.py dupe/b dupe/c dupe/d | ||
Martin Geisler
|
r8167 | hg -R dupe ci -m a dupe/a | ||
hg -R dupe ci -m b/c dupe/[bc] | ||||
hg -R dupe ci -m d dupe/d | ||||
Jesse Glick
|
r5675 | hg -R dupe log -v | ||
echo | ||||
hg pull dupe | ||||
echo | ||||
hg log -v | ||||
echo | ||||
Jesse Glick
|
r5967 | rm .hg/hgrc | ||
(echo some; echo text) > f3 | ||||
python -c 'file("f4.bat", "wb").write("rem empty\x0D\x0A")' | ||||
hg add f3 f4.bat | ||||
Martin Geisler
|
r8167 | hg ci -m 6 | ||
Jesse Glick
|
r5967 | |||
python print.py < bin | ||||
python print.py < f3 | ||||
python print.py < f4.bat | ||||
echo | ||||
echo '[extensions]' >> .hg/hgrc | ||||
echo 'win32text = ' >> .hg/hgrc | ||||
echo '[decode]' >> .hg/hgrc | ||||
echo '** = cleverdecode:' >> .hg/hgrc | ||||
echo '[encode]' >> .hg/hgrc | ||||
echo '** = cleverencode:' >> .hg/hgrc | ||||
cat .hg/hgrc | ||||
echo | ||||
rm f3 f4.bat bin | ||||
Matt Mackall
|
r8742 | hg co -C 2>&1 | python -c 'import sys, os; sys.stdout.write(sys.stdin.read().replace(os.getcwd(), "...."))' | ||
Jesse Glick
|
r5967 | python print.py < bin | ||
python print.py < f3 | ||||
python print.py < f4.bat | ||||
echo | ||||
python -c 'file("f5.sh", "wb").write("# empty\x0D\x0A")' | ||||
hg add f5.sh | ||||
Martin Geisler
|
r8167 | hg ci -m 7 | ||
Jesse Glick
|
r5967 | python print.py < f5.sh | ||
hg cat f5.sh | python print.py | ||||
Alexis S. L. Carvalho
|
r6299 | |||
echo '% just linefeed' > linefeed | ||||
hg ci -qAm 8 linefeed | ||||
python print.py < linefeed | ||||
hg cat linefeed | python print.py | ||||
hg st -q | ||||
hg revert -a linefeed | ||||
python print.py < linefeed | ||||
hg st -q | ||||
echo modified >> linefeed | ||||
hg st -q | ||||
hg revert -a | ||||
hg st -q | ||||
python print.py < linefeed | ||||