Branch Coverage

inc/Test/Builder.pm
Criterion Covered Total %
branch 77 256 30.0


line true false branch
19 0 2 if ($] >= 5.008001 and $Test::Builder::Config{'useithreads'} and $INC{'threads.pm'}) { }
29 0 0 if ($type eq 'HASH') { }
0 0 elsif ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'SCALAR') { }
44 0 0 if ($type eq 'HASH') { }
0 0 elsif ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'SCALAR') { }
198 2 0 unless $^C
225 4 6 if (defined $pack)
247 2 2 unless $cmd
251 0 2 if ($$self{'Have_Plan'})
255 1 1 if ($cmd eq 'no_plan') { }
0 1 elsif ($cmd eq 'skip_all') { }
1 0 elsif ($cmd eq 'tests') { }
262 1 0 if ($arg) { }
0 0 elsif (not defined $arg) { }
0 0 elsif (not $arg) { }
295 1 0 if (@_)
296 0 1 unless $max =~ /^\+?\d+$/ and $max > 0
302 1 0 unless $self->no_header
334 0 0 if $$self{'Expected_Tests'}
335 0 0 if $$self{'No_Plan'}
353 0 0 if $reason
358 0 0 unless $self->no_header
388 0 1 $test ? :
398 0 1 if defined $name and $name =~ /^[\d\s]+$/
411 1 0 if (not $test) { }
413 0 1 $todo ? :
420 1 0 if $self->use_numbers
422 1 0 if (defined $name) { }
431 0 1 if ($todo) { }
446 1 0 unless ($test)
447 0 1 $todo ? :
448 1 0 if $ENV{'HARNESS_ACTIVE'}
450 1 0 if (defined $name) { }
459 0 1 $test ? :
467 0 2 unless $self->_try(sub { require overload; } )
470 0 2 if ($self->_is_object($$thing))
471 0 0 if (my $string_meth = overload::Method($$thing, $type))
482 0 2 if ref $thing
0 2 $self->_try(sub { $thing->isa('UNIVERSAL') if ref $thing; } ) ? :
498 0 0 unless $self->_is_dualvar($$val)
510 0 0 if $numval != 0 and $numval ne $val
537 0 0 unless (defined $got and defined $expect)
542 0 0 unless $test
555 0 0 unless (defined $got and defined $expect)
560 0 0 unless $test
571 0 0 if (defined $$val) { }
572 0 0 if ($type eq 'eq') { }
613 0 0 unless (defined $got and defined $dont_expect)
618 0 0 unless $test
629 0 0 unless (defined $got and defined $dont_expect)
634 0 0 unless $test
695 0 0 $numeric_cmps{$type} ? :
716 0 0 unless ($ok)
717 0 0 if ($type =~ /^(eq|==)$/) { }
730 0 0 defined $got ? :
731 0 0 defined $expect ? :
746 0 0 if defined $file and defined $line
816 0 0 if $self->use_numbers
818 0 0 if length $why
857 0 0 if $self->use_numbers
922 0 0 unless defined $regex
927 0 0 if (ref $regex eq 'Regexp') { }
0 0 elsif (($re, $opts) = $regex =~ m[^ /(.*)/ (\w*) $ ]sx or (undef, $re, $opts) = $regex =~ /^ m([^\w\s]) (.+) \1 (\w*) $/sx) { }
935 0 0 length $opts ? :
946 0 0 unless (defined $usable_regex)
963 0 0 if $cmp eq '!~'
969 0 0 unless ($ok)
970 0 0 defined $this ? :
971 0 0 $cmp eq '=~' ? :
1009 0 4 wantarray ? :
1026 0 6 unless defined $maybe_fh
1028 6 0 if ref $maybe_fh eq 'GLOB'
1029 0 0 if ref \$maybe_fh eq 'GLOB'
1071 0 1 if (defined $level)
1104 0 1 if (defined $use_nums)
1141 0 8 if (defined $no)
1192 0 5 if $self->no_diag
1193 0 5 unless @msgs
1196 0 5 if $^C
1200 5 0 defined $_ ? :
1206 0 5 unless $msg =~ /\n\Z/
1231 0 2 if $^C
1243 0 2 unless $msg =~ /\n\Z/
1264 0 6 $self->todo ? :
1300 2 2 if (defined $fh)
1309 2 6 if (defined $fh)
1318 2 0 if (defined $fh)
1330 6 0 if ($self->is_fh($file_or_fh)) { }
1335 0 0 unless open $fh, ">$file_or_fh"
1372 0 2 if $Opened_Testhandles
1375 0 2 unless open TESTOUT, '>&STDOUT'
1376 0 2 unless open TESTERR, '>&STDERR'
1418 0 1 unless ($$self{'Have_Plan'})
1449 0 0 if (defined $num)
1450 0 0 unless ($$self{'Have_Plan'})
1458 0 0 if ($num > @$test_results) { }
0 0 elsif ($num < @$test_results) { }
1459 0 0 @$test_results ? :
1574 0 7 unless $pack
1577 0 7 defined ${$pack . '::TODO';} ? :
1596 1 0 wantarray ? :
1640 0 6 if ($check)
1695 0 2 if ($$self{'Original_Pid'} != $$ or not $$self{'Have_Plan'} || $$self{'Test_Died'} or $$self{'Bailed_Out'})
1706 1 1 if (@$test_results) { }
0 1 elsif ($$self{'Skip_All'}) { }
1 0 elsif ($$self{'Test_Died'}) { }
1708 0 1 if ($$self{'No_Plan'})
1709 0 0 unless $self->no_header
1718 0 1 unless defined $$test_results[$idx]
1727 0 1 if ($num_extra < 0) { }
0 1 elsif ($num_extra > 0) { }
1728 0 0 $$self{'Expected_Tests'} == 1 ? :
1734 0 0 $$self{'Expected_Tests'} == 1 ? :
1740 1 0 if ($num_failed)
1742 1 0 $num_failed == 1 ? :
1744 1 0 $num_extra == 0 ? :
1751 0 1 if ($$self{'Test_Died'})
1756 0 0 if _my_exit(255)
1760 1 0 if ($num_failed) { }
0 0 elsif ($num_extra != 0) { }
1761 1 0 $num_failed <= 254 ? :
1770 1 0 if _my_exit($exit_code)
1773 0 0 if _my_exit(0)
1779 1 0 if _my_exit(255)
1783 0 0 if _my_exit(255)
1788 2 0 if defined $Test and not $Test->no_ending