]>
Commit | Line | Data |
---|---|---|
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. |
6 | test_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 | |
15 | test_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 | ' |