1*5759b3d2Safresh1#!/usr/bin/perl -w 2*5759b3d2Safresh1 3*5759b3d2Safresh1BEGIN { 4*5759b3d2Safresh1 if( $ENV{PERL_CORE} ) { 5*5759b3d2Safresh1 chdir 't'; 6*5759b3d2Safresh1 @INC = '../lib'; 7*5759b3d2Safresh1 } 8*5759b3d2Safresh1} 9*5759b3d2Safresh1 10*5759b3d2Safresh1 11*5759b3d2Safresh1use Test::More tests => 12; 12*5759b3d2Safresh1use Test::Builder; 13*5759b3d2Safresh1my $tb = Test::Builder->create; 14*5759b3d2Safresh1$tb->level(0); 15*5759b3d2Safresh1 16*5759b3d2Safresh1ok !eval { $tb->plan( tests => 'no_plan' ); }; 17*5759b3d2Safresh1is $@, sprintf "Number of tests must be a positive integer. You gave it 'no_plan' at %s line %d.\n", $0, __LINE__ - 1; 18*5759b3d2Safresh1 19*5759b3d2Safresh1my $foo = []; 20*5759b3d2Safresh1my @foo = ($foo, 2, 3); 21*5759b3d2Safresh1ok !eval { $tb->plan( tests => @foo ) }; 22*5759b3d2Safresh1is $@, sprintf "Number of tests must be a positive integer. You gave it '$foo' at %s line %d.\n", $0, __LINE__ - 1; 23*5759b3d2Safresh1 24*5759b3d2Safresh1ok !eval { $tb->plan( tests => 9.99 ) }; 25*5759b3d2Safresh1is $@, sprintf "Number of tests must be a positive integer. You gave it '9.99' at %s line %d.\n", $0, __LINE__ - 1; 26*5759b3d2Safresh1 27*5759b3d2Safresh1#line 25 28*5759b3d2Safresh1ok !eval { $tb->plan( tests => -1 ) }; 29*5759b3d2Safresh1is $@, "Number of tests must be a positive integer. You gave it '-1' at $0 line 25.\n"; 30*5759b3d2Safresh1 31*5759b3d2Safresh1#line 29 32*5759b3d2Safresh1ok !eval { $tb->plan( tests => '' ) }; 33*5759b3d2Safresh1is $@, "You said to run 0 tests at $0 line 29.\n"; 34*5759b3d2Safresh1 35*5759b3d2Safresh1#line 33 36*5759b3d2Safresh1ok !eval { $tb->plan( 'wibble' ) }; 37*5759b3d2Safresh1is $@, "plan() doesn't understand wibble at $0 line 33.\n"; 38