line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
#line 1 |
2
|
1
|
|
|
1
|
|
5
|
package Test2::Hub::Subtest; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
22
|
|
3
|
1
|
|
|
1
|
|
3
|
use strict; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
39
|
|
4
|
|
|
|
|
|
|
use warnings; |
5
|
|
|
|
|
|
|
|
6
|
|
|
|
|
|
|
our $VERSION = '1.302073'; |
7
|
|
|
|
|
|
|
|
8
|
1
|
|
|
1
|
|
4
|
|
|
1
|
|
|
|
|
39
|
|
9
|
1
|
|
|
1
|
|
4
|
BEGIN { require Test2::Hub; our @ISA = qw(Test2::Hub) } |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
4
|
|
10
|
1
|
|
|
1
|
|
5
|
use Test2::Util::HashBase qw/nested bailed_out exit_code manual_skip_all id/; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
194
|
|
11
|
|
|
|
|
|
|
use Test2::Util qw/get_tid/; |
12
|
|
|
|
|
|
|
|
13
|
|
|
|
|
|
|
my $ID = 1; |
14
|
0
|
|
|
0
|
0
|
|
sub init { |
15
|
0
|
|
|
|
|
|
my $self = shift; |
16
|
0
|
|
0
|
|
|
|
$self->SUPER::init(@_); |
17
|
|
|
|
|
|
|
$self->{+ID} ||= join "-", $$, get_tid, $ID++; |
18
|
|
|
|
|
|
|
} |
19
|
0
|
|
|
0
|
0
|
|
|
20
|
|
|
|
|
|
|
sub is_subtest { 1 } |
21
|
|
|
|
|
|
|
|
22
|
0
|
|
|
0
|
1
|
|
sub process { |
23
|
0
|
|
|
|
|
|
my $self = shift; |
24
|
0
|
|
|
|
|
|
my ($e) = @_; |
25
|
0
|
|
|
|
|
|
$e->set_nested($self->nested); |
26
|
0
|
0
|
|
|
|
|
$e->set_in_subtest($self->{+ID}); |
27
|
0
|
|
|
|
|
|
$self->set_bailed_out($e) if $e->isa('Test2::Event::Bail'); |
28
|
|
|
|
|
|
|
$self->SUPER::process($e); |
29
|
|
|
|
|
|
|
} |
30
|
|
|
|
|
|
|
|
31
|
0
|
|
|
0
|
1
|
|
sub send { |
32
|
0
|
|
|
|
|
|
my $self = shift; |
33
|
|
|
|
|
|
|
my ($e) = @_; |
34
|
0
|
|
|
|
|
|
|
35
|
|
|
|
|
|
|
my $out = $self->SUPER::send($e); |
36
|
0
|
0
|
|
|
|
|
|
37
|
0
|
0
|
0
|
|
|
|
return $out if $self->{+MANUAL_SKIP_ALL}; |
|
|
|
0
|
|
|
|
|
|
|
|
0
|
|
|
|
|
38
|
|
|
|
|
|
|
return $out unless $e->isa('Test2::Event::Plan') |
39
|
|
|
|
|
|
|
&& $e->directive eq 'SKIP' |
40
|
|
|
|
|
|
|
&& ($e->trace->pid != $self->pid || $e->trace->tid != $self->tid); |
41
|
1
|
|
|
1
|
|
5
|
|
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
107
|
|
42
|
0
|
|
|
|
|
|
no warnings 'exiting'; |
43
|
|
|
|
|
|
|
last T2_SUBTEST_WRAPPER; |
44
|
|
|
|
|
|
|
} |
45
|
|
|
|
|
|
|
|
46
|
0
|
|
|
0
|
0
|
|
sub terminate { |
47
|
0
|
|
|
|
|
|
my $self = shift; |
48
|
0
|
|
|
|
|
|
my ($code, $e) = @_; |
49
|
|
|
|
|
|
|
$self->set_exit_code($code); |
50
|
0
|
0
|
|
|
|
|
|
51
|
0
|
0
|
0
|
|
|
|
return if $self->{+MANUAL_SKIP_ALL}; |
|
|
|
0
|
|
|
|
|
|
|
|
0
|
|
|
|
|
52
|
|
|
|
|
|
|
return if $e->isa('Test2::Event::Plan') |
53
|
|
|
|
|
|
|
&& $e->directive eq 'SKIP' |
54
|
|
|
|
|
|
|
&& ($e->trace->pid != $$ || $e->trace->tid != get_tid); |
55
|
1
|
|
|
1
|
|
5
|
|
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
43
|
|
56
|
0
|
|
|
|
|
|
no warnings 'exiting'; |
57
|
|
|
|
|
|
|
last T2_SUBTEST_WRAPPER; |
58
|
|
|
|
|
|
|
} |
59
|
|
|
|
|
|
|
|
60
|
|
|
|
|
|
|
1; |
61
|
|
|
|
|
|
|
|
62
|
|
|
|
|
|
|
__END__ |