X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=urisagit%2FPerl-Docs.git;a=blobdiff_plain;f=t%2Fdriver.pm;fp=t%2Fdriver.pm;h=0000000000000000000000000000000000000000;hp=ca7537788bad350cf86bd422aa53f641e56c0efe;hb=cfa512db1acfce24f3bc1f0dba49f3fffd1722da;hpb=05faa35f252ef7f60a0bc072cf1d123fcb8e255c diff --git a/t/driver.pm b/t/driver.pm deleted file mode 100644 index ca75377..0000000 --- a/t/driver.pm +++ /dev/null @@ -1,77 +0,0 @@ -# driver.pm - common test driver code - -use Test::More ; - -BEGIN { - *CORE::GLOBAL::syswrite = - sub(*\$$;$) { my( $h, $b, $s ) = @_; CORE::syswrite $h, $b, $s } ; - - *CORE::GLOBAL::sysread = - sub(*\$$;$) { my( $h, $b, $s ) = @_; CORE::sysread $h, $b, $s } ; -} - -sub test_driver { - - my( $tests ) = @_ ; - -use Data::Dumper ; - -# plan for one expected ok() call per test - - plan( tests => scalar @{$tests} ) ; - -# loop over all the tests - - foreach my $test ( @{$tests} ) { - -#print Dumper $test ; - - if ( $test->{skip} ) { - ok( 1, "SKIPPING $test->{name}" ) ; - next ; - } - - my $override = $test->{override} ; - -# run any setup sub before this test. this can is used to modify the -# object for this test (e.g. delete templates from the cache). - - if( my $pretest = $test->{pretest} ) { - - $pretest->($test) ; - } - - my $sub = $test->{sub} ; - my $args = $test->{args} ; - -local( $^W) ; - local *{"CORE::GLOBAL::$override"} = sub {} if $override ; - - my $result = eval { - $sub->( @{$args} ) ; - } ; - -# if we had an error and expected it, we pass this test - - if ( $@ ) { - - if ( $test->{error} && $@ =~ /$test->{error}/ ) { - - ok( 1, $test->{name} ) ; -#print "ERR [$@]\n" ; - } - else { - - print "unexpected error: $@\n" ; - ok( 0, $test->{name} ) ; - } - } - - if( my $posttest = $test->{posttest} ) { - - $posttest->($test) ; - } - } -} - -1 ;