Branch Coverage

lib/Test/Classy/Base.pm
Criterion Covered Total %
branch 64 72 88.8


line true false branch
19 25 20 if ($class ne 'Test::Classy::Base')
20 23 2 unless grep {$_ eq 'base';} @flags
30 22 594 if $export =~ /^\W/
34 3 1 unless $_ eq 'ignore'
2 20 if (grep {$_ eq 'ignore_me' unless $_ eq 'ignore';} @flags)
38 20 2 if ($class eq 'Test::Classy::Base')
50 23 53 if ($attr eq 'Test') { }
29 24 elsif (my($dummy, $plan) = $attr =~ /^Tests?\((['"]?)(\d+|no_plan)\1\)$/) { }
19 5 elsif (my($type, $dummy2, $reason) = $attr =~ /^(Skip|TODO)(?:\((['"]?)(.+)\)\2)?$/) { }
63 4 52 unless $stash{'plan'}
65 3 49 if ($stash{'plan'} eq 'no_plan')
66 1 2 unless Test::Classy::Util::_planned()
90 1 2 if exists $$tests{$name}{$moniker}
100 2 16 if (${"${class}::_ignore_me";})
127 2 16 if $class->_should_be_ignored
138 0 37 if $sym{$name} =~ /^(?:initialize|finalize)$/
140 6 31 if (my $reason = $class->_should_skip_this_class)
157 7 24 if (exists $$test{'TODO'}) { }
5 19 elsif (exists $$test{'Skip'}) { }
158 4 3 defined $$test{'TODO'} ? :
162 1 6 if (exists $$test{'Skip'}) { }
178 3 2 defined $$test{'Skip'} ? :
195 3 22 if ($@)
198 3 0 if ($rest)
199 3 0 if (exists $$test{'TODO'}) { }
200 3 0 defined $$test{'TODO'} ? :
215 3 22 if (my $reason = $class->_is_skipped)
218 2 1 if ($rest)
275 56 0 if $ENCODE and $INC{'utf8.pm'}
283 1 55 unless defined $message
285 50 6 if (my $name = $class->test_name)
286 50 0 if $ENCODE and $INC{'utf8.pm'}
287 45 5 unless $message =~ /\b$name\b/
296 0 56 unless defined $message
298 56 0 if (my($name) = $class =~ /(\w+)$/)
299 52 4 unless $message =~ /\b$name\b/