зеркало из https://github.com/microsoft/git.git
tests: factor out terminal handling from t7006
Other tests besides the pager ones may want to check how we handle output to a terminal. This patch makes the code reusable. Signed-off-by: Jeff King <peff@peff.net> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
c752e7f3e8
Коммит
cc4e48fc1e
|
@ -0,0 +1,28 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
test_expect_success 'set up terminal for tests' '
|
||||||
|
if test -t 1
|
||||||
|
then
|
||||||
|
>stdout_is_tty
|
||||||
|
elif
|
||||||
|
test_have_prereq PERL &&
|
||||||
|
"$PERL_PATH" "$TEST_DIRECTORY"/test-terminal.perl \
|
||||||
|
sh -c "test -t 1"
|
||||||
|
then
|
||||||
|
>test_terminal_works
|
||||||
|
fi
|
||||||
|
'
|
||||||
|
|
||||||
|
if test -e stdout_is_tty
|
||||||
|
then
|
||||||
|
test_terminal() { "$@"; }
|
||||||
|
test_set_prereq TTY
|
||||||
|
elif test -e test_terminal_works
|
||||||
|
then
|
||||||
|
test_terminal() {
|
||||||
|
"$PERL_PATH" "$TEST_DIRECTORY"/test-terminal.perl "$@"
|
||||||
|
}
|
||||||
|
test_set_prereq TTY
|
||||||
|
else
|
||||||
|
say "# no usable terminal, so skipping some tests"
|
||||||
|
fi
|
|
@ -4,42 +4,13 @@ test_description='Test automatic use of a pager.'
|
||||||
|
|
||||||
. ./test-lib.sh
|
. ./test-lib.sh
|
||||||
. "$TEST_DIRECTORY"/lib-pager.sh
|
. "$TEST_DIRECTORY"/lib-pager.sh
|
||||||
|
. "$TEST_DIRECTORY"/lib-terminal.sh
|
||||||
|
|
||||||
cleanup_fail() {
|
cleanup_fail() {
|
||||||
echo >&2 cleanup failed
|
echo >&2 cleanup failed
|
||||||
(exit 1)
|
(exit 1)
|
||||||
}
|
}
|
||||||
|
|
||||||
test_expect_success 'set up terminal for tests' '
|
|
||||||
rm -f stdout_is_tty ||
|
|
||||||
cleanup_fail &&
|
|
||||||
|
|
||||||
if test -t 1
|
|
||||||
then
|
|
||||||
>stdout_is_tty
|
|
||||||
elif
|
|
||||||
test_have_prereq PERL &&
|
|
||||||
"$PERL_PATH" "$TEST_DIRECTORY"/t7006/test-terminal.perl \
|
|
||||||
sh -c "test -t 1"
|
|
||||||
then
|
|
||||||
>test_terminal_works
|
|
||||||
fi
|
|
||||||
'
|
|
||||||
|
|
||||||
if test -e stdout_is_tty
|
|
||||||
then
|
|
||||||
test_terminal() { "$@"; }
|
|
||||||
test_set_prereq TTY
|
|
||||||
elif test -e test_terminal_works
|
|
||||||
then
|
|
||||||
test_terminal() {
|
|
||||||
"$PERL_PATH" "$TEST_DIRECTORY"/t7006/test-terminal.perl "$@"
|
|
||||||
}
|
|
||||||
test_set_prereq TTY
|
|
||||||
else
|
|
||||||
say "# no usable terminal, so skipping some tests"
|
|
||||||
fi
|
|
||||||
|
|
||||||
test_expect_success 'setup' '
|
test_expect_success 'setup' '
|
||||||
unset GIT_PAGER GIT_PAGER_IN_USE;
|
unset GIT_PAGER GIT_PAGER_IN_USE;
|
||||||
test_might_fail git config --unset core.pager &&
|
test_might_fail git config --unset core.pager &&
|
||||||
|
|
Загрузка…
Ссылка в новой задаче