| 1 | #!./perl |
| 2 | # |
| 3 | # tests for default output handle |
| 4 | |
| 5 | # DAPM 30/4/10 this area seems to have been undertested. For now, the only |
| 6 | # tests are ensuring things don't crash when PL_defoutgv isn't a GV; |
| 7 | # it probably needs expanding at some point to cover other stuff. |
| 8 | |
| 9 | BEGIN { |
| 10 | chdir 't'; |
| 11 | @INC = '../lib'; |
| 12 | require './test.pl'; |
| 13 | } |
| 14 | |
| 15 | plan tests => 17; |
| 16 | |
| 17 | my $stderr = *STDERR; |
| 18 | select($stderr); |
| 19 | $stderr = 1; # whoops, PL_defoutgv no longer a GV! |
| 20 | # XXX It is a GV as of 5.13.7. Is this test file needed any more? |
| 21 | |
| 22 | # note that in the tests below, the return values aren't as important |
| 23 | # as the fact that they don't crash |
| 24 | |
| 25 | ok print(""), 'print'; |
| 26 | ok select(), 'select'; |
| 27 | next_test(); |
| 28 | format STDERR = |
| 29 | #@<< |
| 30 | ok 3 |
| 31 | . |
| 32 | ok ! write(); |
| 33 | |
| 34 | ok($^, '$^'); |
| 35 | ok($~, '$~'); |
| 36 | ok($=, '$='); |
| 37 | ok($-, '$-'); |
| 38 | is($%, 0, '$%'); |
| 39 | is($|, 0, '$|'); |
| 40 | $^ = 1; pass '$^ = 1'; |
| 41 | $~ = 1; pass '$~ = 1'; |
| 42 | $= = 1; pass '$= = 1'; |
| 43 | $- = 1; pass '$- = 1'; |
| 44 | $% = 1; pass '$% = 1'; |
| 45 | $| = 1; pass '$| = 1'; |
| 46 | ok close(), 'close'; |
| 47 | |