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