view tests/test-patch @ 10128:ea7c392f2b08

patch: drop eol normalization fast-path for 'lf' and 'crlf' With eolmode set to 'lf' or 'crlf' we avoided the hunk duplication and normalization by reading the input patch in text mode. Dropping this optimization simplifies code expectations for a small overhead. The change in test-mq-eol comes from a tolerance to CRLF instead of LF for last lines without newlines being broken by this revision. This tolerance was only partially supported and will be added again in a better way.
author Patrick Mezard <pmezard@gmail.com>
date Wed, 23 Dec 2009 19:31:48 +0100
parents 0de7e6e27fe4
children
line wrap: on
line source

#!/bin/sh

cat > patchtool.py <<EOF
import sys
print 'Using custom patch'
if '--binary' in sys.argv:
    print '--binary found !'
EOF

echo "[ui]" >> $HGRCPATH
echo "patch=python ../patchtool.py" >> $HGRCPATH

hg init a
cd a
echo a > a
hg commit -Ama -d '1 0'
echo b >> a
hg commit -Amb -d '2 0'
cd ..

# This test check that:
# - custom patch commands with arguments actually works
# - patch code does not try to add weird arguments like
# --binary when custom patch commands are used. For instance
# --binary is added by default under win32.

echo % check custom patch options are honored
hg --cwd a export -o ../a.diff tip
hg clone -r 0 a b

hg --cwd b import -v ../a.diff