1*5759b3d2Safresh1#!perl -w 2*5759b3d2Safresh1 3*5759b3d2Safresh1BEGIN { 4*5759b3d2Safresh1 if( $ENV{PERL_CORE} ) { 5*5759b3d2Safresh1 chdir 't'; 6*5759b3d2Safresh1 @INC = '../lib'; 7*5759b3d2Safresh1 } 8*5759b3d2Safresh1 else { 9*5759b3d2Safresh1 unshift @INC, 't/lib'; 10*5759b3d2Safresh1 } 11*5759b3d2Safresh1} 12*5759b3d2Safresh1 13*5759b3d2Safresh1use strict; 14*5759b3d2Safresh1 15*5759b3d2Safresh1use Test::Builder; 16*5759b3d2Safresh1use Test::Builder::NoOutput; 17*5759b3d2Safresh1use Test::Simple; 18*5759b3d2Safresh1 19*5759b3d2Safresh1# TB methods expect to be wrapped 20*5759b3d2Safresh1my $ok = sub { shift->ok(@_) }; 21*5759b3d2Safresh1my $plan = sub { shift->plan(@_) }; 22*5759b3d2Safresh1my $done_testing = sub { shift->done_testing(@_) }; 23*5759b3d2Safresh1 24*5759b3d2Safresh1my $TB = Test::Builder->new; 25*5759b3d2Safresh1my $test = Test::Builder::NoOutput->create; 26*5759b3d2Safresh1$test->$plan( tests => 3 ); 27*5759b3d2Safresh1 28*5759b3d2Safresh1local $ENV{HARNESS_ACTIVE} = 0; 29*5759b3d2Safresh1 30*5759b3d2Safresh1$test->$ok(1, 'Foo'); 31*5759b3d2Safresh1$TB->is_eq($test->read(), <<END); 32*5759b3d2Safresh11..3 33*5759b3d2Safresh1ok 1 - Foo 34*5759b3d2Safresh1END 35*5759b3d2Safresh1 36*5759b3d2Safresh1#line 30 37*5759b3d2Safresh1$test->$ok(0, 'Bar'); 38*5759b3d2Safresh1$TB->is_eq($test->read(), <<END); 39*5759b3d2Safresh1not ok 2 - Bar 40*5759b3d2Safresh1# Failed test 'Bar' 41*5759b3d2Safresh1# at $0 line 30. 42*5759b3d2Safresh1END 43*5759b3d2Safresh1 44*5759b3d2Safresh1$test->$ok(1, 'Yar'); 45*5759b3d2Safresh1$test->$ok(1, 'Car'); 46*5759b3d2Safresh1$TB->is_eq($test->read(), <<END); 47*5759b3d2Safresh1ok 3 - Yar 48*5759b3d2Safresh1ok 4 - Car 49*5759b3d2Safresh1END 50*5759b3d2Safresh1 51*5759b3d2Safresh1#line 45 52*5759b3d2Safresh1$test->$ok(0, 'Sar'); 53*5759b3d2Safresh1$TB->is_eq($test->read(), <<END); 54*5759b3d2Safresh1not ok 5 - Sar 55*5759b3d2Safresh1# Failed test 'Sar' 56*5759b3d2Safresh1# at $0 line 45. 57*5759b3d2Safresh1END 58*5759b3d2Safresh1 59*5759b3d2Safresh1$test->_ending(); 60*5759b3d2Safresh1$TB->is_eq($test->read(), <<END); 61*5759b3d2Safresh1# Looks like you planned 3 tests but ran 5. 62*5759b3d2Safresh1# Looks like you failed 2 tests of 5 run. 63*5759b3d2Safresh1END 64*5759b3d2Safresh1 65*5759b3d2Safresh1$TB->$done_testing(5); 66