#!/bin/sh
#
# Copyright (c) 2005 Junio C Hamano
#

test_description='git-apply handling binary patches

'
. ./test-lib.sh

# setup

cat >file1 <<EOF
A quick brown fox jumps over the lazy dog.
A tiny little penguin runs around in circles.
There is a flag with Linux written on it.
A slow black-and-white panda just sits there,
munching on his bamboo.
EOF
cat file1 >file2
cat file1 >file4

git-update-index --add --remove file1 file2 file4
git-commit -m 'Initial Version' 2>/dev/null

git-checkout -b binary
tr 'x' '\0' <file1 >file3
cat file3 >file4
git-add file2
tr '\0' 'v' <file3 >file1
rm -f file2
git-update-index --add --remove file1 file2 file3 file4
git-commit -m 'Second Version'

git-diff-tree -p master binary >B.diff
git-diff-tree -p -C master binary >C.diff

git-diff-tree -p --full-index master binary >BF.diff
git-diff-tree -p --full-index -C master binary >CF.diff

test_expect_success 'stat binary diff -- should not fail.' \
	'git-checkout master
	 git-apply --stat --summary B.diff'

test_expect_success 'stat binary diff (copy) -- should not fail.' \
	'git-checkout master
	 git-apply --stat --summary C.diff'

test_expect_failure 'check binary diff -- should fail.' \
	'git-checkout master
	 git-apply --check B.diff'

test_expect_failure 'check binary diff (copy) -- should fail.' \
	'git-checkout master
	 git-apply --check C.diff'

test_expect_failure 'check incomplete binary diff with replacement -- should fail.' \
	'git-checkout master
	 git-apply --check --allow-binary-replacement B.diff'

test_expect_failure 'check incomplete binary diff with replacement (copy) -- should fail.' \
	'git-checkout master
	 git-apply --check --allow-binary-replacement C.diff'

test_expect_success 'check binary diff with replacement.' \
	'git-checkout master
	 git-apply --check --allow-binary-replacement BF.diff'

test_expect_success 'check binary diff with replacement (copy).' \
	'git-checkout master
	 git-apply --check --allow-binary-replacement CF.diff'

# Now we start applying them.

do_reset () {
	rm -f file?
	git-reset --hard
	git-checkout -f master
}

test_expect_failure 'apply binary diff -- should fail.' \
	'do_reset
	 git-apply B.diff'

test_expect_failure 'apply binary diff -- should fail.' \
	'do_reset
	 git-apply --index B.diff'

test_expect_failure 'apply binary diff (copy) -- should fail.' \
	'do_reset
	 git-apply C.diff'

test_expect_failure 'apply binary diff (copy) -- should fail.' \
	'do_reset
	 git-apply --index C.diff'

test_expect_failure 'apply binary diff without replacement -- should fail.' \
	'do_reset
	 git-apply BF.diff'

test_expect_failure 'apply binary diff without replacement (copy) -- should fail.' \
	'do_reset
	 git-apply CF.diff'

test_expect_success 'apply binary diff.' \
	'do_reset
	 git-apply --allow-binary-replacement --index BF.diff &&
	 test -z "$(git-diff --name-status binary)"'

test_expect_success 'apply binary diff (copy).' \
	'do_reset
	 git-apply --allow-binary-replacement --index CF.diff &&
	 test -z "$(git-diff --name-status binary)"'

test_done
