diff options
Diffstat (limited to 't/t1600-index.sh')
| -rwxr-xr-x | t/t1600-index.sh | 76 | 
1 files changed, 76 insertions, 0 deletions
diff --git a/t/t1600-index.sh b/t/t1600-index.sh new file mode 100755 index 0000000000..079d241145 --- /dev/null +++ b/t/t1600-index.sh @@ -0,0 +1,76 @@ +#!/bin/sh + +test_description='index file specific tests' + +. ./test-lib.sh + +test_expect_success 'setup' ' +	echo 1 >a +' + +test_expect_success 'bogus GIT_INDEX_VERSION issues warning' ' +	( +		rm -f .git/index && +		GIT_INDEX_VERSION=2bogus && +		export GIT_INDEX_VERSION && +		git add a 2>&1 | sed "s/[0-9]//" >actual.err && +		sed -e "s/ Z$/ /" <<-\EOF >expect.err && +			warning: GIT_INDEX_VERSION set, but the value is invalid. +			Using version Z +		EOF +		test_i18ncmp expect.err actual.err +	) +' + +test_expect_success 'out of bounds GIT_INDEX_VERSION issues warning' ' +	( +		rm -f .git/index && +		GIT_INDEX_VERSION=1 && +		export GIT_INDEX_VERSION && +		git add a 2>&1 | sed "s/[0-9]//" >actual.err && +		sed -e "s/ Z$/ /" <<-\EOF >expect.err && +			warning: GIT_INDEX_VERSION set, but the value is invalid. +			Using version Z +		EOF +		test_i18ncmp expect.err actual.err +	) +' + +test_expect_success 'no warning with bogus GIT_INDEX_VERSION and existing index' ' +	( +		GIT_INDEX_VERSION=1 && +		export GIT_INDEX_VERSION && +		git add a 2>actual.err && +		>expect.err && +		test_i18ncmp expect.err actual.err +	) +' + +test_expect_success 'out of bounds index.version issues warning' ' +	( +		sane_unset GIT_INDEX_VERSION && +		rm -f .git/index && +		git config --add index.version 1 && +		git add a 2>&1 | sed "s/[0-9]//" >actual.err && +		sed -e "s/ Z$/ /" <<-\EOF >expect.err && +			warning: index.version set, but the value is invalid. +			Using version Z +		EOF +		test_i18ncmp expect.err actual.err +	) +' + +test_expect_success 'GIT_INDEX_VERSION takes precedence over config' ' +	( +		rm -f .git/index && +		GIT_INDEX_VERSION=4 && +		export GIT_INDEX_VERSION && +		git config --add index.version 2 && +		git add a 2>&1 && +		echo 4 >expect && +		test-index-version <.git/index >actual && +		test_cmp expect actual +	) +' + +test_done  | 
