1*5759b3d2Safresh1#!perl -w 2*5759b3d2Safresh1# HARNESS-NO-STREAM 3*5759b3d2Safresh1# HARNESS-NO-PRELOAD 4*5759b3d2Safresh1 5*5759b3d2Safresh1BEGIN { 6*5759b3d2Safresh1 if( $ENV{PERL_CORE} ) { 7*5759b3d2Safresh1 chdir 't'; 8*5759b3d2Safresh1 @INC = '../lib'; 9*5759b3d2Safresh1 } 10*5759b3d2Safresh1} 11*5759b3d2Safresh1 12*5759b3d2Safresh1# Can't use Test.pm, that's a 5.005 thing. 13*5759b3d2Safresh1package My::Test; 14*5759b3d2Safresh1 15*5759b3d2Safresh1# This has to be a require or else the END block below runs before 16*5759b3d2Safresh1# Test::Builder's own and the ending diagnostics don't come out right. 17*5759b3d2Safresh1require Test::Builder; 18*5759b3d2Safresh1my $TB = Test::Builder->create; 19*5759b3d2Safresh1$TB->plan(tests => 3); 20*5759b3d2Safresh1 21*5759b3d2Safresh1 22*5759b3d2Safresh1package main; 23*5759b3d2Safresh1 24*5759b3d2Safresh1require Test::Simple; 25*5759b3d2Safresh1 26*5759b3d2Safresh1chdir 't'; 27*5759b3d2Safresh1push @INC, '../t/lib/'; 28*5759b3d2Safresh1require Test::Simple::Catch; 29*5759b3d2Safresh1my($out, $err) = Test::Simple::Catch::caught(); 30*5759b3d2Safresh1local $ENV{HARNESS_ACTIVE} = 0; 31*5759b3d2Safresh1 32*5759b3d2Safresh1Test::Simple->import(tests => 1); 33*5759b3d2Safresh1 34*5759b3d2Safresh1END { 35*5759b3d2Safresh1 $TB->is_eq($out->read, <<OUT); 36*5759b3d2Safresh11..1 37*5759b3d2Safresh1OUT 38*5759b3d2Safresh1 39*5759b3d2Safresh1 $TB->is_eq($err->read, <<ERR); 40*5759b3d2Safresh1# No tests run! 41*5759b3d2Safresh1ERR 42*5759b3d2Safresh1 43*5759b3d2Safresh1 $TB->is_eq($?, 255, "exit code"); 44*5759b3d2Safresh1 45*5759b3d2Safresh1 $? = grep { !$_ } $TB->summary; 46*5759b3d2Safresh1} 47