##// END OF EJS Templates
add a fix for issue 1175...
add a fix for issue 1175 If we copy a file followed by an update, it's possible for the parent manifest to no longer contain the source file of the copy, which could cause commit to fail. If this happens, we search backwares from the first parent to find the most likely original revision.

File last commit:

r6299:653ddd1d default
r6875:0d714a48 default
Show More
test-win32text
115 lines | 2.1 KiB | text/plain | TextLexer
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 #!/bin/sh
Thomas Arendsen Hein
Removed trailing spaces from everything except test output
r6210 cat > unix2dos.py <<EOF
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
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
Provide better context for custom Python encode/decode filters....
r5967 cat > print.py <<EOF
import sys
print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>'))
EOF
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg init
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
hg ci -m 1 -d'0 0'
echo
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 python unix2dos.py f
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg ci -m 2 -d'0 0'
hg revert -a
echo
mkdir d
echo hello > d/f2
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 python unix2dos.py d/f2
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg add d/f2
hg ci -m 3 -d'0 0'
hg revert -a
rm d/f2
echo
hg rem f
hg ci -m 4 -d'0 0'
echo
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 python -c 'file("bin", "wb").write("hello\x00\x0D\x0A")'
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg add bin
hg ci -m 5 -d'0 0'
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
test-win32text: avoid unix2dos, printf extensions
r5680 python unix2dos.py dupe/b dupe/c dupe/d
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg -R dupe ci -m a -d'0 0' dupe/a
hg -R dupe ci -m b/c -d'0 0' dupe/[bc]
hg -R dupe ci -m d -d'0 0' dupe/d
hg -R dupe log -v
echo
hg pull dupe
echo
hg log -v
echo
Jesse Glick
Provide better context for custom Python encode/decode filters....
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
hg ci -m 6 -d'0 0'
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
hg co 2>&1 | python -c 'import sys, os; sys.stdout.write(sys.stdin.read().replace(os.getcwd(), "...."))'
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
hg ci -m 7 -d'0 0'
python print.py < f5.sh
hg cat f5.sh | python print.py
Alexis S. L. Carvalho
revert: update state of files in the "checkout" list...
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