1*5759b3d2Safresh1# HARNESS-NO-STREAM 2*5759b3d2Safresh1# HARNESS-NO-PRELOAD 3*5759b3d2Safresh1 4*5759b3d2Safresh1BEGIN { 5*5759b3d2Safresh1 if( $ENV{PERL_CORE} ) { 6*5759b3d2Safresh1 chdir 't'; 7*5759b3d2Safresh1 @INC = ('../lib', 'lib'); 8*5759b3d2Safresh1 } 9*5759b3d2Safresh1 else { 10*5759b3d2Safresh1 unshift @INC, 't/lib'; 11*5759b3d2Safresh1 } 12*5759b3d2Safresh1} 13*5759b3d2Safresh1 14*5759b3d2Safresh1# Can't use Test.pm, that's a 5.005 thing. 15*5759b3d2Safresh1package My::Test; 16*5759b3d2Safresh1 17*5759b3d2Safresh1# This has to be a require or else the END block below runs before 18*5759b3d2Safresh1# Test::Builder's own and the ending diagnostics don't come out right. 19*5759b3d2Safresh1require Test::Builder; 20*5759b3d2Safresh1my $TB = Test::Builder->create; 21*5759b3d2Safresh1$TB->plan(tests => 2); 22*5759b3d2Safresh1 23*5759b3d2Safresh1sub is { $TB->is_eq(@_) } 24*5759b3d2Safresh1 25*5759b3d2Safresh1 26*5759b3d2Safresh1package main; 27*5759b3d2Safresh1 28*5759b3d2Safresh1require Test::Simple; 29*5759b3d2Safresh1 30*5759b3d2Safresh1require Test::Simple::Catch; 31*5759b3d2Safresh1my($out, $err) = Test::Simple::Catch::caught(); 32*5759b3d2Safresh1local $ENV{HARNESS_ACTIVE} = 0; 33*5759b3d2Safresh1 34*5759b3d2Safresh1Test::Simple->import(tests => 5); 35*5759b3d2Safresh1 36*5759b3d2Safresh1#line 30 37*5759b3d2Safresh1ok(1, 'Foo'); 38*5759b3d2Safresh1ok(0, 'Bar'); 39*5759b3d2Safresh1ok(1, '1 2 3'); 40*5759b3d2Safresh1 41*5759b3d2Safresh1END { 42*5759b3d2Safresh1 My::Test::is($$out, <<OUT); 43*5759b3d2Safresh11..5 44*5759b3d2Safresh1ok 1 - Foo 45*5759b3d2Safresh1not ok 2 - Bar 46*5759b3d2Safresh1ok 3 - 1 2 3 47*5759b3d2Safresh1OUT 48*5759b3d2Safresh1 49*5759b3d2Safresh1 My::Test::is($$err, <<ERR); 50*5759b3d2Safresh1# Failed test 'Bar' 51*5759b3d2Safresh1# at $0 line 31. 52*5759b3d2Safresh1# You named your test '1 2 3'. You shouldn't use numbers for your test names. 53*5759b3d2Safresh1# Very confusing. 54*5759b3d2Safresh1# Looks like you planned 5 tests but ran 3. 55*5759b3d2Safresh1# Looks like you failed 1 test of 3 run. 56*5759b3d2Safresh1ERR 57*5759b3d2Safresh1 58*5759b3d2Safresh1 exit 0; 59*5759b3d2Safresh1} 60