1b8851fccSafresh1# -*-perl-*- 2b8851fccSafresh1use strict; 3b8851fccSafresh1use Test qw(:DEFAULT $TESTOUT $TESTERR $ntest); 4b8851fccSafresh1 5b8851fccSafresh1### This test is crafted in such a way as to prevent Test::Harness from 6b8851fccSafresh1### seeing the todo tests, otherwise you get people sending in bug reports 7b8851fccSafresh1### about Test.pm having "UNEXPECTEDLY SUCCEEDED" tests. 8b8851fccSafresh1 9*5759b3d2Safresh1open F, ">", "todo"; 10b8851fccSafresh1$TESTOUT = *F{IO}; 11b8851fccSafresh1$TESTERR = *F{IO}; 12b8851fccSafresh1my $tests = 5; 13b8851fccSafresh1plan tests => $tests, todo => [2..$tests]; 14b8851fccSafresh1 15b8851fccSafresh1 16b8851fccSafresh1# tests to go to the output file 17b8851fccSafresh1ok(1); 18b8851fccSafresh1ok(1); 19b8851fccSafresh1ok(0,1); 20b8851fccSafresh1ok(0,1,"need more tuits"); 21b8851fccSafresh1ok(1,1); 22b8851fccSafresh1 23b8851fccSafresh1close F; 24b8851fccSafresh1$TESTOUT = *STDOUT{IO}; 25b8851fccSafresh1$TESTERR = *STDERR{IO}; 26b8851fccSafresh1$ntest = 1; 27b8851fccSafresh1 28*5759b3d2Safresh1open F, "<", "todo"; 29b8851fccSafresh1my $out = join '', <F>; 30b8851fccSafresh1close F; 31b8851fccSafresh1unlink "todo"; 32b8851fccSafresh1 33b8851fccSafresh1my $expect = <<"EXPECT"; 34b8851fccSafresh11..5 todo 2 3 4 5; 35b8851fccSafresh1ok 1 36b8851fccSafresh1ok 2 # ($0 at line 18 TODO?!) 37b8851fccSafresh1not ok 3 38b8851fccSafresh1# Test 3 got: '0' ($0 at line 19 *TODO*) 39b8851fccSafresh1# Expected: '1' 40b8851fccSafresh1not ok 4 41b8851fccSafresh1# Test 4 got: '0' ($0 at line 20 *TODO*) 42b8851fccSafresh1# Expected: '1' (need more tuits) 43b8851fccSafresh1ok 5 # ($0 at line 21 TODO?!) 44b8851fccSafresh1EXPECT 45b8851fccSafresh1 46b8851fccSafresh1 47b8851fccSafresh1sub commentless { 48b8851fccSafresh1 my $in = $_[0]; 49b8851fccSafresh1 $in =~ s/^#[^\n]*\n//mg; 50b8851fccSafresh1 $in =~ s/\n#[^\n]*$//mg; 51b8851fccSafresh1 return $in; 52b8851fccSafresh1} 53b8851fccSafresh1 54b8851fccSafresh1print "1..1\n"; 55b8851fccSafresh1ok( commentless($out), commentless($expect) ); 56