diff options
author | Jonathan Nieder <jrnieder@gmail.com> | 2010-10-17 02:36:59 +0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-10-18 16:20:19 -0700 |
commit | 996621eb4d4f7014a6542778420dd23b1d428896 (patch) | |
tree | 2d880243696fc14b0f658130b2eeafd8e48de551 /t/lib-terminal.sh | |
parent | 05236a5e9d29a2628a8f1de96a2a256185687e6c (diff) | |
download | git-996621eb4d4f7014a6542778420dd23b1d428896.tar.gz |
test_terminal: catch use without TTY prerequisite
It is easy to forget to declare the TTY prerequisite when
writing tests on a system where it would always be satisfied
(because IO::Pty is installed; see v1.7.3-rc0~33^2, 2010-08-16
for example). Automatically detect this problem so there is
no need to remember.
test_terminal: need to declare TTY prerequisite
test_must_fail: command not found: test_terminal echo hi
test_terminal returns status 127 in this case to simulate
not being available.
Also replace the SIMPLEPAGERTTY prerequisite on one test with
"SIMPLEPAGER,TTY", since (1) the latter is supported now and
(2) the prerequisite detection relies on the TTY prereq being
explicitly declared.
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/lib-terminal.sh')
-rw-r--r-- | t/lib-terminal.sh | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/t/lib-terminal.sh b/t/lib-terminal.sh index 3258b8f0d5..5e7ee9a5c7 100644 --- a/t/lib-terminal.sh +++ b/t/lib-terminal.sh @@ -15,14 +15,23 @@ test_expect_success 'set up terminal for tests' ' if test -e have_tty then - test_terminal() { "$@"; } + test_terminal_() { "$@"; } test_set_prereq TTY elif test -e test_terminal_works then - test_terminal() { + test_terminal_() { "$PERL_PATH" "$TEST_DIRECTORY"/test-terminal.perl "$@" } test_set_prereq TTY else say "# no usable terminal, so skipping some tests" fi + +test_terminal () { + if ! test_declared_prereq TTY + then + echo >&2 'test_terminal: need to declare TTY prerequisite' + return 127 + fi + test_terminal_ "$@" +} |