test: test_must_be_empty helper
There are quite a lot places where an output file is expected to be
empty, and we fail the test when it is not.  The output from running
the test script with -i -v can be helped if we showed the unexpected
contents at that point.
We could of course do
    >expected.empty && test_cmp expected.empty actual
but this is commmon enough to be done with a dedicated helper.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
			
			
				maint
			
			
		
							parent
							
								
									b1d04bfcf8
								
							
						
					
					
						commit
						ca8d148daf
					
				|  | @ -50,7 +50,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'test help' ' | test_expect_success 'test help' ' | ||||||
| 	test_must_fail test-parse-options -h > output 2> output.err && | 	test_must_fail test-parse-options -h > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_i18ncmp expect output | 	test_i18ncmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -75,7 +75,7 @@ check() { | ||||||
| 	shift && | 	shift && | ||||||
| 	sed "s/^$what .*/$what $expect/" <expect.template >expect && | 	sed "s/^$what .*/$what $expect/" <expect.template >expect && | ||||||
| 	test-parse-options $* >output 2>output.err && | 	test-parse-options $* >output 2>output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -86,7 +86,7 @@ check_i18n() { | ||||||
| 	shift && | 	shift && | ||||||
| 	sed "s/^$what .*/$what $expect/" <expect.template >expect && | 	sed "s/^$what .*/$what $expect/" <expect.template >expect && | ||||||
| 	test-parse-options $* >output 2>output.err && | 	test-parse-options $* >output 2>output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_i18ncmp expect output | 	test_i18ncmp expect output | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -99,7 +99,7 @@ check_unknown() { | ||||||
| 	esac && | 	esac && | ||||||
| 	cat expect.err >>expect && | 	cat expect.err >>expect && | ||||||
| 	test_must_fail test-parse-options $* >output 2>output.err && | 	test_must_fail test-parse-options $* >output 2>output.err && | ||||||
| 	test ! -s output && | 	test_must_be_empty output && | ||||||
| 	test_cmp expect output.err | 	test_cmp expect output.err | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -112,7 +112,7 @@ check_unknown_i18n() { | ||||||
| 	esac && | 	esac && | ||||||
| 	cat expect.err >>expect && | 	cat expect.err >>expect && | ||||||
| 	test_must_fail test-parse-options $* >output 2>output.err && | 	test_must_fail test-parse-options $* >output 2>output.err && | ||||||
| 	test ! -s output && | 	test_must_be_empty output && | ||||||
| 	test_i18ncmp expect output.err | 	test_i18ncmp expect output.err | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -149,7 +149,7 @@ test_expect_success 'short options' ' | ||||||
| 	test-parse-options -s123 -b -i 1729 -b -vv -n -F my.file \ | 	test-parse-options -s123 -b -i 1729 -b -vv -n -F my.file \ | ||||||
| 	> output 2> output.err && | 	> output 2> output.err && | ||||||
| 	test_cmp expect output && | 	test_cmp expect output && | ||||||
| 	test ! -s output.err | 	test_must_be_empty output.err | ||||||
| ' | ' | ||||||
|  |  | ||||||
| cat > expect << EOF | cat > expect << EOF | ||||||
|  | @ -168,7 +168,7 @@ test_expect_success 'long options' ' | ||||||
| 	test-parse-options --boolean --integer 1729 --boolean --string2=321 \ | 	test-parse-options --boolean --integer 1729 --boolean --string2=321 \ | ||||||
| 		--verbose --verbose --no-dry-run --abbrev=10 --file fi.le\ | 		--verbose --verbose --no-dry-run --abbrev=10 --file fi.le\ | ||||||
| 		--obsolete > output 2> output.err && | 		--obsolete > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -199,7 +199,7 @@ EOF | ||||||
| test_expect_success 'intermingled arguments' ' | test_expect_success 'intermingled arguments' ' | ||||||
| 	test-parse-options a1 --string 123 b1 --boolean -j 13 -- --boolean \ | 	test-parse-options a1 --string 123 b1 --boolean -j 13 -- --boolean \ | ||||||
| 		> output 2> output.err && | 		> output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -217,13 +217,13 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'unambiguously abbreviated option' ' | test_expect_success 'unambiguously abbreviated option' ' | ||||||
| 	test-parse-options --int 2 --boolean --no-bo > output 2> output.err && | 	test-parse-options --int 2 --boolean --no-bo > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'unambiguously abbreviated option with "="' ' | test_expect_success 'unambiguously abbreviated option with "="' ' | ||||||
| 	test-parse-options --int=2 > output 2> output.err && | 	test-parse-options --int=2 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -246,7 +246,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'non ambiguous option (after two options it abbreviates)' ' | test_expect_success 'non ambiguous option (after two options it abbreviates)' ' | ||||||
| 	test-parse-options --st 123 > output 2> output.err && | 	test-parse-options --st 123 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -256,7 +256,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'detect possible typos' ' | test_expect_success 'detect possible typos' ' | ||||||
| 	test_must_fail test-parse-options -boolean > output 2> output.err && | 	test_must_fail test-parse-options -boolean > output 2> output.err && | ||||||
| 	test ! -s output && | 	test_must_be_empty output && | ||||||
| 	test_cmp typo.err output.err | 	test_cmp typo.err output.err | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -266,7 +266,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'detect possible typos' ' | test_expect_success 'detect possible typos' ' | ||||||
| 	test_must_fail test-parse-options -ambiguous > output 2> output.err && | 	test_must_fail test-parse-options -ambiguous > output 2> output.err && | ||||||
| 	test ! -s output && | 	test_must_be_empty output && | ||||||
| 	test_cmp typo.err output.err | 	test_cmp typo.err output.err | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -285,7 +285,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'keep some options as arguments' ' | test_expect_success 'keep some options as arguments' ' | ||||||
| 	test-parse-options --quux > output 2> output.err && | 	test-parse-options --quux > output 2> output.err && | ||||||
|         test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
|         test_cmp expect output |         test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -305,7 +305,7 @@ EOF | ||||||
| test_expect_success 'OPT_DATE() and OPT_SET_PTR() work' ' | test_expect_success 'OPT_DATE() and OPT_SET_PTR() work' ' | ||||||
| 	test-parse-options -t "1970-01-01 00:00:01 +0000" --default-string \ | 	test-parse-options -t "1970-01-01 00:00:01 +0000" --default-string \ | ||||||
| 		foo -q > output 2> output.err && | 		foo -q > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -324,7 +324,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'OPT_CALLBACK() and OPT_BIT() work' ' | test_expect_success 'OPT_CALLBACK() and OPT_BIT() work' ' | ||||||
| 	test-parse-options --length=four -b -4 > output 2> output.err && | 	test-parse-options --length=four -b -4 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -352,13 +352,13 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'OPT_BIT() and OPT_SET_INT() work' ' | test_expect_success 'OPT_BIT() and OPT_SET_INT() work' ' | ||||||
| 	test-parse-options --set23 -bbbbb --no-or4 > output 2> output.err && | 	test-parse-options --set23 -bbbbb --no-or4 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'OPT_NEGBIT() and OPT_SET_INT() work' ' | test_expect_success 'OPT_NEGBIT() and OPT_SET_INT() work' ' | ||||||
| 	test-parse-options --set23 -bbbbb --neg-or4 > output 2> output.err && | 	test-parse-options --set23 -bbbbb --neg-or4 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -376,19 +376,19 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'OPT_BIT() works' ' | test_expect_success 'OPT_BIT() works' ' | ||||||
| 	test-parse-options -bb --or4 > output 2> output.err && | 	test-parse-options -bb --or4 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'OPT_NEGBIT() works' ' | test_expect_success 'OPT_NEGBIT() works' ' | ||||||
| 	test-parse-options -bb --no-neg-or4 > output 2> output.err && | 	test-parse-options -bb --no-neg-or4 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'OPT_COUNTUP() with PARSE_OPT_NODASH works' ' | test_expect_success 'OPT_COUNTUP() with PARSE_OPT_NODASH works' ' | ||||||
| 	test-parse-options + + + + + + > output 2> output.err && | 	test-parse-options + + + + + + > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -406,7 +406,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'OPT_NUMBER_CALLBACK() works' ' | test_expect_success 'OPT_NUMBER_CALLBACK() works' ' | ||||||
| 	test-parse-options -12345 > output 2> output.err && | 	test-parse-options -12345 > output 2> output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  | @ -424,7 +424,7 @@ EOF | ||||||
|  |  | ||||||
| test_expect_success 'negation of OPT_NONEG flags is not ambiguous' ' | test_expect_success 'negation of OPT_NONEG flags is not ambiguous' ' | ||||||
| 	test-parse-options --no-ambig >output 2>output.err && | 	test-parse-options --no-ambig >output 2>output.err && | ||||||
| 	test ! -s output.err && | 	test_must_be_empty output.err && | ||||||
| 	test_cmp expect output | 	test_cmp expect output | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @ -179,7 +179,7 @@ test_expect_success 'default to @{upstream} when upstream arg is missing' ' | ||||||
| test_expect_success 'rebase -q is quiet' ' | test_expect_success 'rebase -q is quiet' ' | ||||||
| 	git checkout -b quiet topic && | 	git checkout -b quiet topic && | ||||||
| 	git rebase -q master >output.out 2>&1 && | 	git rebase -q master >output.out 2>&1 && | ||||||
| 	test ! -s output.out | 	test_must_be_empty output.out | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'Rebase a commit that sprinkles CRs in' ' | test_expect_success 'Rebase a commit that sprinkles CRs in' ' | ||||||
|  |  | ||||||
|  | @ -200,17 +200,17 @@ test_expect_success 'apply -q is quiet' ' | ||||||
| 	echo foo > file && | 	echo foo > file && | ||||||
| 	git stash && | 	git stash && | ||||||
| 	git stash apply -q > output.out 2>&1 && | 	git stash apply -q > output.out 2>&1 && | ||||||
| 	test ! -s output.out | 	test_must_be_empty output.out | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'save -q is quiet' ' | test_expect_success 'save -q is quiet' ' | ||||||
| 	git stash save --quiet > output.out 2>&1 && | 	git stash save --quiet > output.out 2>&1 && | ||||||
| 	test ! -s output.out | 	test_must_be_empty output.out | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'pop -q is quiet' ' | test_expect_success 'pop -q is quiet' ' | ||||||
| 	git stash pop -q > output.out 2>&1 && | 	git stash pop -q > output.out 2>&1 && | ||||||
| 	test ! -s output.out | 	test_must_be_empty output.out | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'pop -q --index works and is quiet' ' | test_expect_success 'pop -q --index works and is quiet' ' | ||||||
|  | @ -219,13 +219,13 @@ test_expect_success 'pop -q --index works and is quiet' ' | ||||||
| 	git stash save --quiet && | 	git stash save --quiet && | ||||||
| 	git stash pop -q --index > output.out 2>&1 && | 	git stash pop -q --index > output.out 2>&1 && | ||||||
| 	test foo = "$(git show :file)" && | 	test foo = "$(git show :file)" && | ||||||
| 	test ! -s output.out | 	test_must_be_empty output.out | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'drop -q is quiet' ' | test_expect_success 'drop -q is quiet' ' | ||||||
| 	git stash && | 	git stash && | ||||||
| 	git stash drop -q > output.out 2>&1 && | 	git stash drop -q > output.out 2>&1 && | ||||||
| 	test ! -s output.out | 	test_must_be_empty output.out | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'stash -k' ' | test_expect_success 'stash -k' ' | ||||||
|  |  | ||||||
|  | @ -15,19 +15,19 @@ test_expect_success 'git pull -q' ' | ||||||
| 	mkdir clonedq && | 	mkdir clonedq && | ||||||
| 	(cd clonedq && git init && | 	(cd clonedq && git init && | ||||||
| 	git pull -q "../parent" >out 2>err && | 	git pull -q "../parent" >out 2>err && | ||||||
| 	test ! -s err && | 	test_must_be_empty err && | ||||||
| 	test ! -s out) | 	test_must_be_empty out) | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'git pull -q --rebase' ' | test_expect_success 'git pull -q --rebase' ' | ||||||
| 	mkdir clonedqrb && | 	mkdir clonedqrb && | ||||||
| 	(cd clonedqrb && git init && | 	(cd clonedqrb && git init && | ||||||
| 	git pull -q --rebase "../parent" >out 2>err && | 	git pull -q --rebase "../parent" >out 2>err && | ||||||
| 	test ! -s err && | 	test_must_be_empty err && | ||||||
| 	test ! -s out && | 	test_must_be_empty out && | ||||||
| 	git pull -q --rebase "../parent" >out 2>err && | 	git pull -q --rebase "../parent" >out 2>err && | ||||||
| 	test ! -s err && | 	test_must_be_empty err && | ||||||
| 	test ! -s out) | 	test_must_be_empty out) | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'git pull' ' | test_expect_success 'git pull' ' | ||||||
|  | @ -35,7 +35,7 @@ test_expect_success 'git pull' ' | ||||||
| 	(cd cloned && git init && | 	(cd cloned && git init && | ||||||
| 	git pull "../parent" >out 2>err && | 	git pull "../parent" >out 2>err && | ||||||
| 	test -s err && | 	test -s err && | ||||||
| 	test ! -s out) | 	test_must_be_empty out) | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'git pull --rebase' ' | test_expect_success 'git pull --rebase' ' | ||||||
|  | @ -43,7 +43,7 @@ test_expect_success 'git pull --rebase' ' | ||||||
| 	(cd clonedrb && git init && | 	(cd clonedrb && git init && | ||||||
| 	git pull --rebase "../parent" >out 2>err && | 	git pull --rebase "../parent" >out 2>err && | ||||||
| 	test -s err && | 	test -s err && | ||||||
| 	test ! -s out) | 	test_must_be_empty out) | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'git pull -v' ' | test_expect_success 'git pull -v' ' | ||||||
|  | @ -51,7 +51,7 @@ test_expect_success 'git pull -v' ' | ||||||
| 	(cd clonedv && git init && | 	(cd clonedv && git init && | ||||||
| 	git pull -v "../parent" >out 2>err && | 	git pull -v "../parent" >out 2>err && | ||||||
| 	test -s err && | 	test -s err && | ||||||
| 	test ! -s out) | 	test_must_be_empty out) | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'git pull -v --rebase' ' | test_expect_success 'git pull -v --rebase' ' | ||||||
|  | @ -59,22 +59,22 @@ test_expect_success 'git pull -v --rebase' ' | ||||||
| 	(cd clonedvrb && git init && | 	(cd clonedvrb && git init && | ||||||
| 	git pull -v --rebase "../parent" >out 2>err && | 	git pull -v --rebase "../parent" >out 2>err && | ||||||
| 	test -s err && | 	test -s err && | ||||||
| 	test ! -s out) | 	test_must_be_empty out) | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'git pull -v -q' ' | test_expect_success 'git pull -v -q' ' | ||||||
| 	mkdir clonedvq && | 	mkdir clonedvq && | ||||||
| 	(cd clonedvq && git init && | 	(cd clonedvq && git init && | ||||||
| 	git pull -v -q "../parent" >out 2>err && | 	git pull -v -q "../parent" >out 2>err && | ||||||
| 	test ! -s out && | 	test_must_be_empty out && | ||||||
| 	test ! -s err) | 	test_must_be_empty err) | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'git pull -q -v' ' | test_expect_success 'git pull -q -v' ' | ||||||
| 	mkdir clonedqv && | 	mkdir clonedqv && | ||||||
| 	(cd clonedqv && git init && | 	(cd clonedqv && git init && | ||||||
| 	git pull -q -v "../parent" >out 2>err && | 	git pull -q -v "../parent" >out 2>err && | ||||||
| 	test ! -s out && | 	test_must_be_empty out && | ||||||
| 	test -s err) | 	test -s err) | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @ -22,7 +22,7 @@ test_expect_success 'clone -o' ' | ||||||
| test_expect_success 'redirected clone' ' | test_expect_success 'redirected clone' ' | ||||||
|  |  | ||||||
| 	git clone "file://$(pwd)/parent" clone-redirected >out 2>err && | 	git clone "file://$(pwd)/parent" clone-redirected >out 2>err && | ||||||
| 	test ! -s err | 	test_must_be_empty err | ||||||
|  |  | ||||||
| ' | ' | ||||||
| test_expect_success 'redirected clone -v' ' | test_expect_success 'redirected clone -v' ' | ||||||
|  |  | ||||||
|  | @ -457,7 +457,7 @@ test_expect_success 'disambiguation (1)' ' | ||||||
| 	test_must_fail git diff --quiet -- secondfile && | 	test_must_fail git diff --quiet -- secondfile && | ||||||
| 	test -z "$(git diff --cached --name-only)" && | 	test -z "$(git diff --cached --name-only)" && | ||||||
| 	test -f secondfile && | 	test -f secondfile && | ||||||
| 	test ! -s secondfile | 	test_must_be_empty secondfile | ||||||
|  |  | ||||||
| ' | ' | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @ -78,7 +78,7 @@ test_expect_success 'submodule add' ' | ||||||
| 	( | 	( | ||||||
| 		cd addtest && | 		cd addtest && | ||||||
| 		git submodule add -q "$submodurl" submod >actual && | 		git submodule add -q "$submodurl" submod >actual && | ||||||
| 		test ! -s actual && | 		test_must_be_empty actual && | ||||||
| 		echo "gitdir: ../.git/modules/submod" >expect && | 		echo "gitdir: ../.git/modules/submod" >expect && | ||||||
| 		test_cmp expect submod/.git && | 		test_cmp expect submod/.git && | ||||||
| 		( | 		( | ||||||
|  | @ -308,7 +308,7 @@ test_expect_success 'update should work when path is an empty dir' ' | ||||||
|  |  | ||||||
| 	mkdir init && | 	mkdir init && | ||||||
| 	git submodule update -q >update.out && | 	git submodule update -q >update.out && | ||||||
| 	test ! -s update.out && | 	test_must_be_empty update.out && | ||||||
|  |  | ||||||
| 	inspect init && | 	inspect init && | ||||||
| 	test_cmp expect head-sha1 | 	test_cmp expect head-sha1 | ||||||
|  | @ -696,7 +696,7 @@ test_expect_success 'submodule add --name allows to replace a submodule with ano | ||||||
| 		rm -rf repo && | 		rm -rf repo && | ||||||
| 		git rm repo && | 		git rm repo && | ||||||
| 		git submodule add -q --name repo_new "$submodurl/bare.git" repo >actual && | 		git submodule add -q --name repo_new "$submodurl/bare.git" repo >actual && | ||||||
| 		test ! -s actual && | 		test_must_be_empty actual && | ||||||
| 		echo "gitdir: ../.git/modules/submod" >expect && | 		echo "gitdir: ../.git/modules/submod" >expect && | ||||||
| 		test_cmp expect submod/.git && | 		test_cmp expect submod/.git && | ||||||
| 		( | 		( | ||||||
|  |  | ||||||
|  | @ -330,7 +330,7 @@ test_expect_success 'validate result of edits [cvswork2]' ' | ||||||
|  |  | ||||||
| test_expect_success 'validate basic diffs saved during above cvswork2 edits' ' | test_expect_success 'validate basic diffs saved during above cvswork2 edits' ' | ||||||
| 	test $(grep Index: cvsEdit1.diff | wc -l) = 1 && | 	test $(grep Index: cvsEdit1.diff | wc -l) = 1 && | ||||||
| 	test ! -s cvsEdit2-empty.diff && | 	test_must_be_empty cvsEdit2-empty.diff && | ||||||
| 	test $(grep Index: cvsEdit2-N.diff | wc -l) = 1 && | 	test $(grep Index: cvsEdit2-N.diff | wc -l) = 1 && | ||||||
| 	test $(grep Index: cvsEdit3.diff | wc -l) = 3 && | 	test $(grep Index: cvsEdit3.diff | wc -l) = 3 && | ||||||
| 	rm -rf diffSandbox && | 	rm -rf diffSandbox && | ||||||
|  | @ -456,20 +456,20 @@ test_expect_success 'cvs up -r $(git rev-parse v1)' ' | ||||||
|  |  | ||||||
| test_expect_success 'cvs diff -r v1 -u' ' | test_expect_success 'cvs diff -r v1 -u' ' | ||||||
| 	( cd cvswork && cvs -f diff -r v1 -u ) >cvsDiff.out 2>cvs.log && | 	( cd cvswork && cvs -f diff -r v1 -u ) >cvsDiff.out 2>cvs.log && | ||||||
| 	test ! -s cvsDiff.out && | 	test_must_be_empty cvsDiff.out && | ||||||
| 	test ! -s cvs.log | 	test_must_be_empty cvs.log | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'cvs diff -N -r v2 -u' ' | test_expect_success 'cvs diff -N -r v2 -u' ' | ||||||
| 	( cd cvswork && ! cvs -f diff -N -r v2 -u ) >cvsDiff.out 2>cvs.log && | 	( cd cvswork && ! cvs -f diff -N -r v2 -u ) >cvsDiff.out 2>cvs.log && | ||||||
| 	test ! -s cvs.log && | 	test_must_be_empty cvs.log && | ||||||
| 	test -s cvsDiff.out && | 	test -s cvsDiff.out && | ||||||
| 	check_diff cvsDiff.out v2 v1 >check_diff.out 2>&1 | 	check_diff cvsDiff.out v2 v1 >check_diff.out 2>&1 | ||||||
| ' | ' | ||||||
|  |  | ||||||
| test_expect_success 'cvs diff -N -r v2 -r v1.2' ' | test_expect_success 'cvs diff -N -r v2 -r v1.2' ' | ||||||
| 	( cd cvswork && ! cvs -f diff -N -r v2 -r v1.2 -u ) >cvsDiff.out 2>cvs.log && | 	( cd cvswork && ! cvs -f diff -N -r v2 -r v1.2 -u ) >cvsDiff.out 2>cvs.log && | ||||||
| 	test ! -s cvs.log && | 	test_must_be_empty cvs.log && | ||||||
| 	test -s cvsDiff.out && | 	test -s cvsDiff.out && | ||||||
| 	check_diff cvsDiff.out v2 v1.2 >check_diff.out 2>&1 | 	check_diff cvsDiff.out v2 v1.2 >check_diff.out 2>&1 | ||||||
| ' | ' | ||||||
|  | @ -488,7 +488,7 @@ test_expect_success 'apply early [cvswork3] diff to b3' ' | ||||||
|  |  | ||||||
| test_expect_success 'check [cvswork3] diff' ' | test_expect_success 'check [cvswork3] diff' ' | ||||||
| 	( cd cvswork3 && ! cvs -f diff -N -u ) >"$WORKDIR/cvsDiff.out" 2>cvs.log && | 	( cd cvswork3 && ! cvs -f diff -N -u ) >"$WORKDIR/cvsDiff.out" 2>cvs.log && | ||||||
| 	test ! -s cvs.log && | 	test_must_be_empty cvs.log && | ||||||
| 	test -s cvsDiff.out && | 	test -s cvsDiff.out && | ||||||
| 	test $(grep Index: cvsDiff.out | wc -l) = 3 && | 	test $(grep Index: cvsDiff.out | wc -l) = 3 && | ||||||
| 	test_cmp cvsDiff.out cvswork3edit.diff && | 	test_cmp cvsDiff.out cvswork3edit.diff && | ||||||
|  |  | ||||||
|  | @ -606,6 +606,18 @@ test_cmp() { | ||||||
| 	$GIT_TEST_CMP "$@" | 	$GIT_TEST_CMP "$@" | ||||||
| } | } | ||||||
|  |  | ||||||
|  | # Check if the file expected to be empty is indeed empty, and barfs | ||||||
|  | # otherwise. | ||||||
|  |  | ||||||
|  | test_must_be_empty () { | ||||||
|  | 	if test -s "$1" | ||||||
|  | 	then | ||||||
|  | 		echo "'$1' is not empty, it contains:" | ||||||
|  | 		cat "$1" | ||||||
|  | 		return 1 | ||||||
|  | 	fi | ||||||
|  | } | ||||||
|  |  | ||||||
| # Tests that its two parameters refer to the same revision | # Tests that its two parameters refer to the same revision | ||||||
| test_cmp_rev () { | test_cmp_rev () { | ||||||
| 	git rev-parse --verify "$1" >expect.rev && | 	git rev-parse --verify "$1" >expect.rev && | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Junio C Hamano
						Junio C Hamano