Branch Coverage

blib/lib/HTML/Mason/Tests.pm
Criterion Covered Total %
branch 92 154 59.7


line true false branch
157 0 26 unless exists $p{'name'}
160 0 26 unless exists $p{'description'}
163 25 1 unless exists $p{'pre_test_cleanup'}
184 0 146 unless exists $p{'path'}
187 0 146 unless exists $p{'component'}
198 0 389 unless exists $p{'name'}
200 355 34 unless (exists $p{'path'})
206 59 330 if (exists $p{'call_path'}) { }
208 17 42 unless substr($p{'call_path'}, 0, 1) eq "/"
217 5 384 if (ref $p{'call_args'} eq 'HASH') { }
381 3 elsif (not exists $p{'call_args'}) { }
227 0 389 unless exists $p{'description'}
230 0 19 unless exists $p{'component'} or $p{'skip_component'}
233 0 0 unless exists $p{'expect'} or exists $p{'expect_error'} or $p{'skip_expect'} or $self->{'create'}
238 0 389 if exists $p{$_} and not UNIVERSAL::isa($p{$_}, "HASH")
249 0 25 unless @{$self->{'tests'};}
251 0 25 if ($HTML::Mason::Tests::DEBUG)
253 0 0 $self->{'create'} ? :
259 24 1 if $self->{'pre_test_cleanup'}
266 25 0 unless $ENV{'MASON_NO_CLEANUP'}
268 0 25 if $@
278 25 0 unless (-d $self->comp_root)
280 0 25 if $HTML::Mason::Tests::DEBUG
281 0 25 unless mkpath($self->comp_root, 0, 493)
285 24 1 unless (-d $self->data_dir)
287 0 24 if $HTML::Mason::Tests::DEBUG
288 0 24 unless mkpath($self->data_dir, 0, 493)
297 1596 4 if (ref $proto) { }
326 0 25 unless @HTML::Mason::Tests::SHARED
343 5 20 unless (@{$self->{'support'};})
345 0 5 if $HTML::Mason::Tests::DEBUG
369 8 362 unless (-d $dir)
371 0 8 if $HTML::Mason::Tests::DEBUG
372 0 8 unless mkpath($dir, 0, 493)
384 85 508 unless (-d $dir)
386 0 85 if $HTML::Mason::Tests::DEBUG
387 0 85 unless mkpath($dir, 0, 493)
393 0 593 if $HTML::Mason::Tests::DEBUG
396 0 593 unless open my $fh, ">$real_file"
398 0 593 unless print $fh $component
400 0 593 unless close $fh
411 0 25 if ($HTML::Mason::Tests::VERBOSE)
426 0 389 if (%tests_to_run or %tests_to_skip)
437 0 0 if (%tests_to_run and not grep({$tests_to_run{$_};} @all_specs) or %tests_to_skip and grep {$tests_to_skip{$_};} @all_specs)
449 0 0 if $ENV{'PERL_DL_NONLAZY'}
454 0 389 if $HTML::Mason::Tests::VERBOSE
455 370 19 unless $test->{'skip_component'}
472 16 366 if $test->{'interp'}
475 115 251 exists $test->{'interp_params'} ? :
478 0 366 if ($HTML::Mason::Tests::DEBUG and %interp_params)
506 565 0 if defined $_
512 18 364 if ($test->{'pre_code'})
526 0 379 if $HTML::Mason::Tests::DEBUG
527 1 378 if $test->{'pretest_code'}
536 0 389 if exists $self->{'current_test'}{'todo'}
537 0 389 if exists $self->{'current_test'}{'todo'}
539 74 315 if ($error) { }
0 315 elsif ($test->{'expect_error'}) { }
541 74 0 if ($test->{'expect_error'}) { }
543 74 0 if ($error =~ /$test->{'expect_error'}/) { }
549 0 0 if ($HTML::Mason::Tests::VERBOSE)
558 0 0 if $HTML::Mason::Tests::VERBOSE
565 0 0 if $HTML::Mason::Tests::VERBOSE
569 0 315 if ($self->{'create'})
579 0 315 $test->{'skip_expect'} ? :
581 5 310 if ($test->{'expect_warnings'})
583 0 5 unless ($warnings =~ /$test->{'expect_warnings'}/)
590 0 5 if $warnings and !$test->{'expect_warnings'} || $HTML::Mason::Tests::VERBOSE
591 0 315 if $test->{'no_warnings'} and $warnings
593 315 0 $success ? :
603 11 304 if (ref $p{'expect'}) { }
614 0 0 if (not $same and $HTML::Mason::Tests::VERBOSE)
653 527 1152 if (-d $path) { }
1129 23 elsif (-f $path) { }
655 0 527 unless opendir DIR, $path
657 1054 1630 if $file eq "." or $file eq ".."
665 0 23 unless $silent