X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fauthor%2Fhttp-server.t;h=5f8a213a87c6b497e12153818370a6ecc657f4a7;hb=3245a7701a8e15f08a6a881c58055dfd95c6cf33;hp=13a548b6425210079d929b0e652387e65bfa4a37;hpb=641b01310aa293dd3dcb8c366ffab6a0e38fcacf;p=catagits%2FCatalyst-Runtime.git diff --git a/t/author/http-server.t b/t/author/http-server.t index 13a548b..5f8a213 100644 --- a/t/author/http-server.t +++ b/t/author/http-server.t @@ -49,12 +49,14 @@ while ( check_port( 'localhost', $port ) != 1 ) { # run the testsuite against the HTTP server $ENV{CATALYST_SERVER} = "http://localhost:$port"; +chdir '..'; + my $return; if ( $single_test ) { - $return = system( "$^X -I../lib/ $single_test" ); + $return = system( "$^X -Ilib/ $single_test" ); } else { - $return = prove( ['../lib/'], [glob('../t/aggregate/live_*.t')] ); + $return = prove(grep { $_ ne '..' } glob('t/aggregate/live_*.t')); } # shut it down @@ -84,13 +86,19 @@ sub check_port { } sub prove { - my ($inc, $tests) = @_; + my (@tests) = @_; if (!(my $pid = fork)) { - unshift @INC, @{ $inc }; - require TAP::Harness; - my $harness = TAP::Harness->new; - my $aggregator = $harness->runtests(@{ $tests }); + + my $aggr = -e '.aggregating'; + my $harness = TAP::Harness->new({ + ($aggr ? (test_args => \@tests) : ()), + lib => ['lib'], + }); + + my $aggregator = $aggr + ? $harness->runtests('t/aggregate.t') + : $harness->runtests(@tests); exit $aggregator->has_errors ? 1 : 0; } else {