view tests/test-simplemerge-cmd @ 9014:87c05a78e588

test python hook configured with python:[file]:[hook] syntax Adds a test for python hooks configured with python:[file]:[hook] syntax in .hgrc. Increases the test coverage for mercurial/hook from 92% (79/85) to 96% (82/85).
author Henri Wiechers <hwiechers@gmail.com>
date Fri, 26 Jun 2009 14:42:05 +0200
parents 0eb8c4df61bd
children
line wrap: on
line source

#!/bin/sh

cp "$TESTDIR"/../contrib/simplemerge .

echo base > base

echo local > local
cat base >> local
cp local orig

cat base > other
echo other >> other

echo '% changing local directly'
python simplemerge local base other && echo "merge succeeded"
cat local
cp orig local

echo '% printing to stdout'
python simplemerge -p local base other
echo ' local:'
cat local

echo '% conflicts'
cp base conflict-local
cp other conflict-other
echo not other >> conflict-local
echo end >> conflict-local
echo end >> conflict-other
python simplemerge -p conflict-local base conflict-other || echo "merge failed"

echo '% --no-minimal'
python simplemerge -p --no-minimal conflict-local base conflict-other

echo '% 1 label'
python simplemerge -p -L foo conflict-local base conflict-other

echo '% 2 labels'
python simplemerge -p -L foo -L bar conflict-local base conflict-other

echo '% too many labels'
python simplemerge -p -L foo -L bar -L baz conflict-local base conflict-other

echo '% binary file'
python -c "f = file('binary-local', 'w'); f.write('\x00'); f.close()"
cat orig >> binary-local
python simplemerge -p binary-local base other

echo '% binary file --text'
python simplemerge -a -p binary-local base other 2>&1 | $TESTDIR/printrepr.py

echo '% help'
python simplemerge --help

echo '% wrong number of arguments'
python simplemerge

echo '% bad option'
python simplemerge --foo -p local base other

exit 0