Commit | Line | Data |
bdaf8c65 |
1 | #!perl |
2 | |
3 | use strict; |
4 | use File::Spec; |
5 | |
6 | BEGIN { |
7 | *CORE::GLOBAL::exit = sub { die '!exit called!' }; |
8 | } |
9 | |
10 | use TAP::Harness; |
11 | use Test::More; |
12 | |
13 | my @jobs = ( |
14 | { name => 'sequential', |
15 | args => { verbosity => -9 }, |
16 | }, |
17 | { name => 'parallel', |
18 | args => { verbosity => -9, jobs => 2 }, |
19 | }, |
20 | ); |
21 | |
22 | plan tests => @jobs * 2; |
23 | |
24 | for my $test (@jobs) { |
25 | my $name = $test->{name}; |
26 | my $args = $test->{args}; |
27 | my $harness = TAP::Harness->new($args); |
28 | eval { |
29 | local ( *OLDERR, *OLDOUT ); |
30 | open OLDERR, '>&STDERR' or die $!; |
31 | open OLDOUT, '>&STDOUT' or die $!; |
32 | my $devnull = File::Spec->devnull; |
33 | open STDERR, ">$devnull" or die $!; |
34 | open STDOUT, ">$devnull" or die $!; |
35 | |
36 | $harness->runtests( |
37 | File::Spec->catfile( |
bdaf8c65 |
38 | 't', |
39 | 'sample-tests', |
40 | 'bailout' |
41 | ) |
42 | ); |
43 | |
44 | open STDERR, '>&OLDERR' or die $!; |
45 | open STDOUT, '>&OLDOUT' or die $!; |
46 | }; |
47 | my $err = $@; |
48 | unlike $err, qr{!exit called!}, "$name: didn't exit"; |
49 | like $err, qr{FAILED--Further testing stopped: GERONIMMMOOOOOO!!!}, |
50 | "$name: bailout message"; |
51 | } |
52 | |
53 | # vim:ts=2:sw=2:et:ft=perl |
54 | |