| #!/bin/sh |
| |
| test_description='apply a patch that is larger than the preimage' |
| |
| . ./test-lib.sh |
| |
| cat >F <<\EOF |
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 999999 |
| A |
| B |
| C |
| D |
| E |
| F |
| G |
| H |
| I |
| J |
| |
| EOF |
| |
| test_expect_success setup ' |
| |
| git add F && |
| mv F G && |
| sed -e "s/1/11/" -e "s/999999/9/" -e "s/H/HH/" <G >F && |
| git diff >patch && |
| sed -e "/^\$/d" <G >F && |
| git add F |
| |
| ' |
| |
| test_expect_success 'apply should fail gracefully' ' |
| |
| if git apply --index patch |
| then |
| echo Oops, should not have succeeded |
| false |
| else |
| status=$? |
| echo "Status was $status" |
| if test -f .git/index.lock |
| then |
| echo Oops, should not have crashed |
| false |
| fi |
| fi |
| ' |
| |
| test_done |