line |
true |
false |
branch |
11
|
0 |
8 |
if ($] < 5.008) |
22
|
0 |
8 |
if ($] >= 5.008001 and $Test::Builder::Config{'useithreads'} and $INC{'threads.pm'}) { } |
32
|
0 |
0 |
if ($type eq 'HASH') { } |
|
0 |
0 |
elsif ($type eq 'ARRAY') { } |
|
0 |
0 |
elsif ($type eq 'SCALAR') { } |
47
|
0 |
0 |
if ($type eq 'HASH') { } |
|
0 |
0 |
elsif ($type eq 'ARRAY') { } |
|
0 |
0 |
elsif ($type eq 'SCALAR') { } |
186
|
0 |
0 |
if ($$self{'Child_Name'}) |
207
|
0 |
0 |
if ($parent_in_todo) |
238
|
0 |
0 |
if ('CODE' ne ref $subtests) |
261
|
0 |
0 |
unless $self->_plan_handled |
265
|
0 |
0 |
unless (eval {
do {
&$run_the_subtests()
}
}) |
278
|
0 |
0 |
if $error and not eval {
do {
$error->isa('Test::Builder::Exception')
}
} |
283
|
0 |
0 |
if $$child{'Bailed_Out'} |
341
|
0 |
0 |
unless $self->parent |
342
|
0 |
0 |
if ($$self{'Child_Name'}) |
355
|
0 |
0 |
unless ($$self{'Bailed_Out'}) |
356
|
0 |
0 |
if ($$self{'Skip_All'}) { } |
|
0 |
0 |
elsif (not @{$$self{'Test_Results'};}) { } |
375
|
0 |
338 |
if (@_) |
409
|
0 |
0 |
if ($self->parent and $$ == $$self{'Original_Pid'}) |
530
|
2 |
6 |
unless $cmd |
534
|
0 |
6 |
if $$self{'Have_Plan'} |
536
|
6 |
0 |
if (my $method = $plan_cmds{$cmd}) { } |
552
|
6 |
0 |
if ($arg) { } |
|
0 |
0 |
elsif (not defined $arg) { } |
580
|
6 |
0 |
if (@_) |
581
|
0 |
6 |
unless $max =~ /^\+?\d+$/ |
587
|
6 |
0 |
unless $self->no_header |
603
|
0 |
0 |
if $arg |
636
|
0 |
8 |
if $$self{'Have_Output_Plan'} |
639
|
2 |
6 |
if defined $directive |
640
|
2 |
6 |
if defined $reason |
689
|
0 |
0 |
if (defined $num_tests) { } |
696
|
0 |
0 |
if ($$self{'Done_Testing'}) |
704
|
0 |
0 |
if ($self->expected_tests and $num_tests != $self->expected_tests) { } |
712
|
0 |
0 |
unless $$self{'Have_Output_Plan'} |
717
|
0 |
0 |
if $$self{'Expected_Tests'} != $$self{'Curr_Test'} |
720
|
0 |
0 |
if $$self{'Curr_Test'} == 0 |
739
|
330 |
0 |
if $$self{'Expected_Tests'} |
740
|
0 |
0 |
if $$self{'No_Plan'} |
756
|
0 |
2 |
$self->parent ? : |
758
|
2 |
0 |
unless $self->no_header |
759
|
0 |
2 |
if ($self->parent) |
781
|
8 |
0 |
if (defined $pack) |
811
|
0 |
330 |
if ($$self{'Child_Name'} and not $$self{'In_Destroy'}) |
812
|
0 |
0 |
unless defined $name |
818
|
330 |
0 |
$test ? : |
826
|
0 |
330 |
if defined $name and $name =~ /^[\d\s]+$/ |
835
|
0 |
330 |
if $in_todo |
842
|
0 |
330 |
if (not $test) { } |
844
|
0 |
0 |
$self->in_todo ? : |
851
|
330 |
0 |
if $self->use_numbers |
853
|
148 |
182 |
if (defined $name) { } |
862
|
0 |
330 |
if ($self->in_todo) { } |
877
|
0 |
330 |
unless ($test) |
878
|
0 |
0 |
$self->in_todo ? : |
879
|
0 |
0 |
if $ENV{'HARNESS_ACTIVE'} |
882
|
0 |
0 |
if (defined $name) { } |
891
|
0 |
330 |
unless $test or $self->in_todo |
896
|
330 |
0 |
$test ? : |
906
|
0 |
330 |
unless defined $plan |
907
|
0 |
330 |
if $plan =~ /\D/ |
908
|
0 |
330 |
if $plan < $$self{'Curr_Test'} |
919
|
2 |
668 |
if ($self->_is_object($$thing)) |
920
|
0 |
2 |
if (my $string_meth = overload::Method($$thing, $type)) |
932
|
10 |
660 |
if ref $thing |
|
2 |
668 |
$self->_try(sub {
$thing->isa('UNIVERSAL') if ref $thing;
}
) ? : |
947
|
0 |
0 |
unless $self->_is_dualvar($$val) |
959
|
0 |
0 |
if ref $val |
990
|
4 |
237 |
unless (defined $got and defined $expect) |
995
|
0 |
4 |
unless $test |
1006
|
0 |
0 |
unless (defined $got and defined $expect) |
1011
|
0 |
0 |
unless $test |
1021
|
0 |
0 |
if (defined $$val) { } |
1022
|
0 |
0 |
if ($type eq 'eq' or $type eq 'ne') { } |
1083
|
0 |
0 |
unless (defined $got and defined $dont_expect) |
1088
|
0 |
0 |
unless $test |
1099
|
0 |
0 |
unless (defined $got and defined $dont_expect) |
1104
|
0 |
0 |
unless $test |
1160
|
0 |
237 |
if ($cmp_ok_bl{$type}) |
1186
|
0 |
237 |
$numeric_cmps{$type} ? : |
1191
|
0 |
237 |
unless $succ |
1198
|
0 |
237 |
unless ($ok) |
1201
|
0 |
0 |
if ($type =~ /^(eq|==)$/) { } |
|
0 |
0 |
elsif ($type =~ /^(ne|!=)$/) { } |
1217
|
0 |
0 |
defined $got ? : |
1218
|
0 |
0 |
defined $expect ? : |
1234
|
3 |
0 |
if defined $file and defined $line |
1265
|
0 |
0 |
if ($self->parent) |
1297
|
0 |
0 |
unless defined $name |
1314
|
0 |
0 |
if $self->use_numbers |
1316
|
0 |
0 |
if length $why |
1354
|
0 |
0 |
if $self->use_numbers |
1420
|
0 |
3 |
unless defined $regex |
1425
|
3 |
0 |
if (_is_qr($regex)) { } |
|
0 |
0 |
elsif (($re, $opts) = $regex =~ m[^ /(.*)/ (\w*) $ ]sx or (undef, $re, $opts) = $regex =~ /^ m([^\w\s]) (.+) \1 (\w*) $/sx) { } |
1433
|
0 |
0 |
length $opts ? : |
1444
|
3 |
0 |
if defined &re::is_regexp |
1453
|
0 |
3 |
unless (defined $usable_regex) |
1475
|
0 |
3 |
if $cmp eq '!~' |
1481
|
0 |
3 |
unless ($ok) |
1482
|
0 |
0 |
defined $thing ? : |
1483
|
0 |
0 |
$cmp eq '=~' ? : |
1530
|
0 |
1383 |
if $error and $opts{'die_on_fail'} |
1532
|
31 |
1352 |
wantarray ? : |
1549
|
0 |
24 |
unless defined $maybe_fh |
1551
|
24 |
0 |
if ref $maybe_fh eq 'GLOB' |
1552
|
0 |
0 |
if ref \$maybe_fh eq 'GLOB' |
1592
|
0 |
1231 |
if (defined $level) |
1624
|
0 |
330 |
if (defined $use_nums) |
1660
|
0 |
17 |
if (defined $no) |
1732
|
0 |
1 |
$self->in_todo ? : |
1738
|
0 |
1 |
if $self->no_diag |
1739
|
1 |
0 |
unless @msgs |
1742
|
0 |
0 |
if $^C |
1746
|
0 |
0 |
defined $_ ? : |
1777
|
0 |
0 |
ref $_ ? : |
1782
|
0 |
0 |
if $dumper->can('Sortkeys') |
1811
|
0 |
338 |
if $^C |
1823
|
0 |
338 |
unless $msg =~ /\n\z/ |
1864
|
8 |
338 |
if (defined $fh) |
1873
|
8 |
1 |
if (defined $fh) |
1882
|
8 |
0 |
if (defined $fh) |
1893
|
24 |
0 |
if ($self->is_fh($file_or_fh)) { } |
|
0 |
0 |
elsif (ref $file_or_fh eq 'SCALAR') { } |
1898
|
0 |
0 |
if ($] >= 5.008) { } |
1899
|
0 |
0 |
unless open $fh, '>>', $file_or_fh |
1904
|
0 |
0 |
unless $fh = 'Test::Builder::IO::Scalar'->new($file_or_fh) |
1909
|
0 |
0 |
unless open $fh, '>', $file_or_fh |
1948
|
0 |
8 |
if $$self{'Opened_Testhandles'} |
1952
|
0 |
8 |
unless open $Testout, '>&STDOUT' |
1953
|
0 |
8 |
unless open $Testerr, '>&STDERR' |
1971
|
16 |
0 |
if @src_layers |
1981
|
16 |
16 |
if $_ ne 'unix' |
2064
|
0 |
0 |
if (defined $num) |
2069
|
0 |
0 |
if ($num > @$test_results) { } |
|
0 |
0 |
elsif ($num < @$test_results) { } |
2070
|
0 |
0 |
@$test_results ? : |
2111
|
8 |
0 |
if (@_) |
2217
|
0 |
330 |
if defined $$self{'Todo'} |
2221
|
0 |
330 |
if defined $todo |
2245
|
0 |
991 |
unless $pack |
2249
|
0 |
991 |
if $set |
2265
|
0 |
661 |
defined $$self{'Todo'} || $self->find_TODO ? : |
2313
|
0 |
0 |
@_ ? : |
2316
|
0 |
0 |
if ($self->in_todo) |
2336
|
0 |
0 |
unless ($$self{'Start_Todo'}) |
2342
|
0 |
0 |
if ($$self{'Start_Todo'} and @{$$self{'Todo_Stack'};}) { } |
2376
|
240 |
991 |
wantarray ? : |
2420
|
0 |
0 |
if ($check) |
2456
|
0 |
8 |
if $self->no_ending |
2457
|
0 |
8 |
if $$self{'Ending'}++ |
2463
|
0 |
8 |
if ($$self{'Original_Pid'} != $$) |
2468
|
0 |
8 |
if (not $$self{'Have_Plan'} and $$self{'Curr_Test'}) |
2472
|
0 |
0 |
if ($real_exit_code) |
2477
|
0 |
0 |
if _my_exit($real_exit_code) |
2482
|
0 |
0 |
if (@$test_results) |
2484
|
0 |
0 |
if ($num_failed > 0) |
2486
|
0 |
0 |
$num_failed <= 254 ? : |
2487
|
0 |
0 |
if _my_exit($exit_code) |
2490
|
0 |
0 |
if _my_exit(254) |
2495
|
2 |
6 |
unless ($$self{'Have_Plan'}) |
2500
|
0 |
6 |
if ($$self{'Bailed_Out'}) |
2506
|
6 |
0 |
if (@$test_results) { } |
|
0 |
0 |
elsif ($$self{'Skip_All'}) { } |
|
0 |
0 |
elsif ($real_exit_code) { } |
2508
|
0 |
6 |
if ($$self{'No_Plan'}) |
2509
|
0 |
0 |
unless $self->no_header |
2518
|
0 |
330 |
unless defined $$test_results[$idx] |
2526
|
0 |
6 |
if ($num_extra != 0) |
2527
|
0 |
0 |
$$self{'Expected_Tests'} == 1 ? : |
2534
|
0 |
6 |
if ($num_failed) |
2536
|
0 |
0 |
$num_failed == 1 ? : |
2538
|
0 |
0 |
$num_extra == 0 ? : |
2546
|
0 |
6 |
if ($real_exit_code) |
2551
|
0 |
0 |
if _my_exit($real_exit_code) |
2555
|
0 |
6 |
if ($num_failed) { } |
|
0 |
6 |
elsif ($num_extra != 0) { } |
2556
|
0 |
0 |
$num_failed <= 254 ? : |
2565
|
6 |
0 |
if _my_exit($exit_code) |
2568
|
0 |
0 |
if _my_exit(0) |
2575
|
0 |
0 |
if _my_exit($real_exit_code) |
2580
|
0 |
0 |
if _my_exit(255) |
2588
|
8 |
0 |
if defined $Test |