diff options
Diffstat (limited to 'third_party/git/t/t4039-diff-assume-unchanged.sh')
-rwxr-xr-x | third_party/git/t/t4039-diff-assume-unchanged.sh | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/third_party/git/t/t4039-diff-assume-unchanged.sh b/third_party/git/t/t4039-diff-assume-unchanged.sh new file mode 100755 index 000000000000..0eb0314a8b35 --- /dev/null +++ b/third_party/git/t/t4039-diff-assume-unchanged.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +test_description='diff with assume-unchanged entries' + +. ./test-lib.sh + +# external diff has been tested in t4020-diff-external.sh + +test_expect_success 'setup' ' + echo zero > zero && + git add zero && + git commit -m zero && + echo one > one && + echo two > two && + blob=$(git hash-object one) && + git add one two && + git commit -m onetwo && + git update-index --assume-unchanged one && + echo borked >> one && + test "$(git ls-files -v one)" = "h one" +' + +test_expect_success 'diff-index does not examine assume-unchanged entries' ' + git diff-index HEAD^ -- one | grep -q $blob +' + +test_expect_success 'diff-files does not examine assume-unchanged entries' ' + rm one && + test -z "$(git diff-files -- one)" +' + +test_expect_success POSIXPERM 'find-copies-harder is not confused by mode bits' ' + echo content >exec && + chmod +x exec && + git add exec && + git commit -m exec && + git update-index --assume-unchanged exec && + git diff-files --find-copies-harder -- exec >actual && + test_must_be_empty actual +' + +test_done |