]> git.ipfire.org Git - thirdparty/git.git/blame - t/lib-terminal.sh
Merge branch 'wb/fsmonitor-bitmap-fix'
[thirdparty/git.git] / t / lib-terminal.sh
CommitLineData
c74c7203 1# Helpers for terminal output tests.
cc4e48fc 2
7e27173e 3# Catch tests which should depend on TTY but forgot to. There's no need
a9942e10 4# to additionally check that the TTY prereq is set here. If the test declared
7e27173e
JK
5# it and we are running the test, then it must have been set.
6test_terminal () {
7 if ! test_declared_prereq TTY
8 then
9 echo >&4 "test_terminal: need to declare TTY prerequisite"
10 return 127
11 fi
a5bf824f
SG
12 perl "$TEST_DIRECTORY"/test-terminal.perl "$@" 2>&7
13} 7>&2 2>&4
7e27173e
JK
14
15test_lazy_prereq TTY '
16 test_have_prereq PERL &&
17
339e5638
JN
18 # Reading from the pty master seems to get stuck _sometimes_
19 # on Mac OS X 10.5.0, using Perl 5.10.0 or 5.8.9.
20 #
21 # Reproduction recipe: run
22 #
23 # i=0
24 # while ./test-terminal.perl echo hi $i
25 # do
26 # : $((i = $i + 1))
27 # done
28 #
29 # After 2000 iterations or so it hangs.
30 # https://rt.cpan.org/Ticket/Display.html?id=65692
31 #
7e27173e
JK
32 test "$(uname -s)" != Darwin &&
33
34 perl "$TEST_DIRECTORY"/test-terminal.perl \
35 sh -c "test -t 1 && test -t 2"
cc4e48fc 36'