Code

Merge branch 'kb/maint-rebase-autosquash'
[git.git] / t / lib-terminal.sh
index 6fc33db6c14ffaa25e8b086a563be5f7b3829949..c383b57ed9d995f530004923962c45ab38c7fc8b 100644 (file)
@@ -1,28 +1,19 @@
 #!/bin/sh
 
 test_expect_success 'set up terminal for tests' '
-       if test -t 1
-       then
-               >stdout_is_tty
-       elif
+       if
                test_have_prereq PERL &&
                "$PERL_PATH" "$TEST_DIRECTORY"/test-terminal.perl \
-                       sh -c "test -t 1"
+                       sh -c "test -t 1 && test -t 2"
        then
-               >test_terminal_works
+               test_set_prereq TTY &&
+               test_terminal () {
+                       if ! test_declared_prereq TTY
+                       then
+                               echo >&4 "test_terminal: need to declare TTY prerequisite"
+                               return 127
+                       fi
+                       "$PERL_PATH" "$TEST_DIRECTORY"/test-terminal.perl "$@"
+               }
        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