tests/test-simplemerge-cmd
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Sat, 06 Oct 2007 15:30:15 -0300
changeset 5403 477136fa6571
parent 4363 c6413f8f2f8e
permissions -rwxr-xr-x
Always copy the necessary files before applying a git patch This patch removes the "copymod" attribute from the gitpatch class. AFAICS, that attribute was only used to delay the copying of renamed/copied files if there are no other changes to the target, but in this case, if there are changes to the source, we'll end up copying the wrong version. This should fix issue762.

#!/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

echo '% help'
python simplemerge --help

echo '% wrong number of arguments'
python simplemerge

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

exit 0