t7006: use test_config helpers

In some cases, this is just making the test script a little
shorter and easier to read. However, there are several
places where we didn't take proper precautions against
polluting downstream tests with our config; this fixes them,
too.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2011-08-17 22:02:06 -07:00 committed by Junio C Hamano
parent d960c47a88
commit 8d68a6d593

View File

@ -13,7 +13,7 @@ cleanup_fail() {
test_expect_success 'setup' ' test_expect_success 'setup' '
sane_unset GIT_PAGER GIT_PAGER_IN_USE && sane_unset GIT_PAGER GIT_PAGER_IN_USE &&
test_might_fail git config --unset core.pager && test_unconfig core.pager &&
PAGER="cat >paginated.out" && PAGER="cat >paginated.out" &&
export PAGER && export PAGER &&
@ -94,21 +94,19 @@ test_expect_success TTY 'no pager with --no-pager' '
test_expect_success TTY 'configuration can disable pager' ' test_expect_success TTY 'configuration can disable pager' '
rm -f paginated.out && rm -f paginated.out &&
test_might_fail git config --unset pager.grep && test_unconfig pager.grep &&
test_terminal git grep initial && test_terminal git grep initial &&
test -e paginated.out && test -e paginated.out &&
rm -f paginated.out && rm -f paginated.out &&
git config pager.grep false && test_config pager.grep false &&
test_when_finished "git config --unset pager.grep" &&
test_terminal git grep initial && test_terminal git grep initial &&
! test -e paginated.out ! test -e paginated.out
' '
test_expect_success TTY 'git config uses a pager if configured to' ' test_expect_success TTY 'git config uses a pager if configured to' '
rm -f paginated.out && rm -f paginated.out &&
git config pager.config true && test_config pager.config true &&
test_when_finished "git config --unset pager.config" &&
test_terminal git config --list && test_terminal git config --list &&
test -e paginated.out test -e paginated.out
' '
@ -116,8 +114,7 @@ test_expect_success TTY 'git config uses a pager if configured to' '
test_expect_success TTY 'configuration can enable pager (from subdir)' ' test_expect_success TTY 'configuration can enable pager (from subdir)' '
rm -f paginated.out && rm -f paginated.out &&
mkdir -p subdir && mkdir -p subdir &&
git config pager.bundle true && test_config pager.bundle true &&
test_when_finished "git config --unset pager.bundle" &&
git bundle create test.bundle --all && git bundle create test.bundle --all &&
rm -f paginated.out subdir/paginated.out && rm -f paginated.out subdir/paginated.out &&
@ -150,7 +147,7 @@ test_expect_success 'tests can detect color' '
test_expect_success 'no color when stdout is a regular file' ' test_expect_success 'no color when stdout is a regular file' '
rm -f colorless.log && rm -f colorless.log &&
git config color.ui auto || test_config color.ui auto ||
cleanup_fail && cleanup_fail &&
git log >colorless.log && git log >colorless.log &&
@ -159,7 +156,7 @@ test_expect_success 'no color when stdout is a regular file' '
test_expect_success TTY 'color when writing to a pager' ' test_expect_success TTY 'color when writing to a pager' '
rm -f paginated.out && rm -f paginated.out &&
git config color.ui auto || test_config color.ui auto ||
cleanup_fail && cleanup_fail &&
( (
@ -172,7 +169,7 @@ test_expect_success TTY 'color when writing to a pager' '
test_expect_success 'color when writing to a file intended for a pager' ' test_expect_success 'color when writing to a file intended for a pager' '
rm -f colorful.log && rm -f colorful.log &&
git config color.ui auto || test_config color.ui auto ||
cleanup_fail && cleanup_fail &&
( (
@ -221,7 +218,7 @@ test_default_pager() {
$test_expectation SIMPLEPAGER,TTY "$cmd - default pager is used by default" " $test_expectation SIMPLEPAGER,TTY "$cmd - default pager is used by default" "
sane_unset PAGER GIT_PAGER && sane_unset PAGER GIT_PAGER &&
test_might_fail git config --unset core.pager && test_unconfig core.pager &&
rm -f default_pager_used || rm -f default_pager_used ||
cleanup_fail && cleanup_fail &&
@ -244,7 +241,7 @@ test_PAGER_overrides() {
$test_expectation TTY "$cmd - PAGER overrides default pager" " $test_expectation TTY "$cmd - PAGER overrides default pager" "
sane_unset GIT_PAGER && sane_unset GIT_PAGER &&
test_might_fail git config --unset core.pager && test_unconfig core.pager &&
rm -f PAGER_used || rm -f PAGER_used ||
cleanup_fail && cleanup_fail &&
@ -277,7 +274,7 @@ test_core_pager() {
PAGER=wc && PAGER=wc &&
export PAGER && export PAGER &&
git config core.pager 'wc >core.pager_used' && test_config core.pager 'wc >core.pager_used' &&
$full_command && $full_command &&
${if_local_config}test -e core.pager_used ${if_local_config}test -e core.pager_used
" "
@ -307,7 +304,7 @@ test_pager_subdir_helper() {
PAGER=wc && PAGER=wc &&
stampname=\$(pwd)/core.pager_used && stampname=\$(pwd)/core.pager_used &&
export PAGER stampname && export PAGER stampname &&
git config core.pager 'wc >\"\$stampname\"' && test_config core.pager 'wc >\"\$stampname\"' &&
mkdir sub && mkdir sub &&
( (
cd sub && cd sub &&
@ -324,7 +321,7 @@ test_GIT_PAGER_overrides() {
rm -f GIT_PAGER_used || rm -f GIT_PAGER_used ||
cleanup_fail && cleanup_fail &&
git config core.pager wc && test_config core.pager wc &&
GIT_PAGER='wc >GIT_PAGER_used' && GIT_PAGER='wc >GIT_PAGER_used' &&
export GIT_PAGER && export GIT_PAGER &&
$full_command && $full_command &&
@ -405,8 +402,8 @@ test_expect_success TTY 'command-specific pager' '
sane_unset PAGER GIT_PAGER && sane_unset PAGER GIT_PAGER &&
echo "foo:initial" >expect && echo "foo:initial" >expect &&
>actual && >actual &&
git config --unset core.pager && test_unconfig core.pager &&
git config pager.log "sed s/^/foo:/ >actual" && test_config pager.log "sed s/^/foo:/ >actual" &&
test_terminal git log --format=%s -1 && test_terminal git log --format=%s -1 &&
test_cmp expect actual test_cmp expect actual
' '
@ -415,8 +412,8 @@ test_expect_success TTY 'command-specific pager overrides core.pager' '
sane_unset PAGER GIT_PAGER && sane_unset PAGER GIT_PAGER &&
echo "foo:initial" >expect && echo "foo:initial" >expect &&
>actual && >actual &&
git config core.pager "exit 1" test_config core.pager "exit 1"
git config pager.log "sed s/^/foo:/ >actual" && test_config pager.log "sed s/^/foo:/ >actual" &&
test_terminal git log --format=%s -1 && test_terminal git log --format=%s -1 &&
test_cmp expect actual test_cmp expect actual
' '
@ -425,7 +422,7 @@ test_expect_success TTY 'command-specific pager overridden by environment' '
GIT_PAGER="sed s/^/foo:/ >actual" && export GIT_PAGER && GIT_PAGER="sed s/^/foo:/ >actual" && export GIT_PAGER &&
>actual && >actual &&
echo "foo:initial" >expect && echo "foo:initial" >expect &&
git config pager.log "exit 1" && test_config pager.log "exit 1" &&
test_terminal git log --format=%s -1 && test_terminal git log --format=%s -1 &&
test_cmp expect actual test_cmp expect actual
' '