Branch Coverage

inc/Test/Class.pm
Criterion Covered Total %
branch 60 144 41.6


line true false branch
51 243 6 ref $self ? :
61 0 38 unless my $test_info = _test_info($self)
73 69 0 if ('Test::Class::MethodInfo'->is_num_tests($arg)) { }
0 0 elsif ('Test::Class::MethodInfo'->is_method_type($arg)) { }
89 78 0 unless $parent_class->can($name)
90 0 0 if _method_info($class, $parent_class, $name)
97 0 78 if ($symbol eq 'ANON') { }
101 0 78 if _is_public_method($class, $name)
103 0 78 unless eval { do { $class->add_testinfo($name, _parse_attribute_args($args)) } }
125 178 14 ref $self ? :
131 2 0 unless ref $proto
143 0 22 if $@
151 624 0 if ($info->type eq 'test')
155 0 0 unless &$filter($class, $name)
160 156 624 if ($info->is_type($type))
161 156 0 unless $type eq 'test' and not $name =~ /$method_regexp/
174 0 4 if (my $reason = $self->SKIP_CLASS)
175 0 0 $reason eq '1' ? :
181 0 4 if $num_startup_shutdown_methods eq 'no_plan'
184 0 4 if $num_fixture_tests eq 'no_plan'
187 1 3 if $num_tests eq 'no_plan'
194 4 0 if (_isa_class('Test::Class', $test)) { }
0 0 elsif (defined $test and $test =~ /^\d+$/) { }
196 1 3 if $n eq 'no_plan'
201 0 0 unless defined $test
215 0 211 unless $info
217 5 206 if $num_tests eq 'no_plan'
219 206 0 unless $num_tests =~ /^\+/
233 0 78 if $start_test == $current_test
235 0 294 unless $result
243 0 0 if defined $Current_method and $method ne $Current_method
258 273 1 unless (defined $description)
263 0 274 unless ($is_ok)
270 4 74 unless $skip_reason
272 0 78 if $exception
275 2 76 if $num_expected eq 'no_plan'
276 64 14 if ($num_done == $num_expected) { }
0 14 elsif ($num_done > $num_expected) { }
277 0 64 unless $exception eq ''
284 0 20 if ($exception ne '') { }
298 76 2 if $Builder->has_plan
300 1 1 if ($num_tests eq 'no_plan') { }
311 0 6 if @_
317 0 6 unless defined $object_or_class
318 0 6 if $object_or_class eq 'Contextual::Return::Value'
320 6 0 if $object_or_class->isa($class)
330 0 2 unless $Check_block_has_run
333 2 0 if (@tests == 1 and not ref $tests[0])
340 0 2 if $t =~ /^\d+$/
341 0 2 unless _isa_class('Test::Class', $t)
343 0 2 if (my $reason = $t->SKIP_CLASS) { }
345 0 0 unless $reason eq '1'
347 2 0 unless ref $t
349 0 0 unless _has_no_tests($t, $method)
351 0 0 unless $method_passed
352 0 0 unless $method_passed
359 0 78 if $ENV{'TEST_VERBOSE'}
361 78 0 unless _has_no_tests($t, $method)
362 0 78 unless _run_method($t, $method, \@tests)
366 0 0 unless _has_no_tests($t, $method)
367 0 0 unless _run_method($t, $method, \@tests)
377 0 0 if $class eq 'Test::Class'
378 0 0 if _isa_class('Test::Class', $class)
385 0 0 unless my $class = _find_calling_test_class($self)
387 0 0 unless my $info = _method_info($self, $class, $method)
389 0 0 if defined $n
395 0 0 unless defined $Current_method
406 0 0 unless $Builder->expected_tests
412 0 0 unless $Builder->has_plan
415 0 0 $num_failed < 254 ? :
420 0 0 unless $Builder->has_plan
430 0 0 unless (ref $cb eq 'CODE')