tests/test-patch
author NIIMI Satoshi <sa2c@sa2c.net>
Tue, 22 May 2007 07:24:06 +0900
changeset 4694 6bf58c9400e2
parent 4645 0de7e6e27fe4
permissions -rwxr-xr-x
mercurial.el: ignore errors on hg-after-save-hook() Don't signal an error even if running hg command fails. Otherwise, succeeding hooks won't be called.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4645
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     1
#!/bin/sh
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     2
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     3
cat > patchtool.py <<EOF
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     4
import sys
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     5
print 'Using custom patch'
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     6
if '--binary' in sys.argv:
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     7
    print '--binary found !'
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     8
EOF
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     9
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    10
echo "[ui]" >> $HGRCPATH
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    11
echo "patch=python ../patchtool.py" >> $HGRCPATH
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    12
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    13
hg init a
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    14
cd a
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    15
echo a > a
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    16
hg commit -Ama -d '1 0'
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    17
echo b >> a
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    18
hg commit -Amb -d '2 0'
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    19
cd ..
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    20
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    21
# This test check that:
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    22
# - custom patch commands with arguments actually works
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    23
# - patch code does not try to add weird arguments like
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    24
# --binary when custom patch commands are used. For instance
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    25
# --binary is added by default under win32.
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    26
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    27
echo % check custom patch options are honored
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    28
hg --cwd a export -o ../a.diff tip
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    29
hg clone -r 0 a b
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    30
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    31
hg --cwd b import -v ../a.diff
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    32
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    33
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    34
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    35
0de7e6e27fe4 Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    36