#!/bin/sh # # Copyright (c) 2010 Andreas Gruenbacher # test_description='git apply filename consistency check' . ./test-lib.sh test_expect_success setup ' cat > bad1.patch <<EOF && diff --git a/f b/f new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/f-blah @@ -0,0 +1 @@ +1 EOF cat > bad2.patch <<EOF diff --git a/f b/f deleted file mode 100644 index d00491f..0000000 --- b/f-blah +++ /dev/null @@ -1 +0,0 @@ -1 EOF ' test_expect_success 'apply diff with inconsistent filenames in headers' ' test_must_fail git apply bad1.patch 2>err && test_i18ngrep "inconsistent new filename" err && test_must_fail git apply bad2.patch 2>err && test_i18ngrep "inconsistent old filename" err ' test_expect_success 'apply diff with new filename missing from headers' ' cat >missing_new_filename.diff <<-\EOF && diff --git a/f b/f index 0000000..d00491f --- a/f @@ -0,0 +1 @@ +1 EOF test_must_fail git apply missing_new_filename.diff 2>err && test_i18ngrep "lacks filename information" err ' test_expect_success 'apply diff with old filename missing from headers' ' cat >missing_old_filename.diff <<-\EOF && diff --git a/f b/f index d00491f..0000000 +++ b/f @@ -1 +0,0 @@ -1 EOF test_must_fail git apply missing_old_filename.diff 2>err && test_i18ngrep "lacks filename information" err ' test_done