Branch Coverage

blib/lib/HTML/Mason/Interp.pm
Criterion Covered Total %
branch 120 156 76.9


line true false branch
210 8 382 unless $self->{'data_dir'}
214 0 382 unless 'File::Spec'->file_name_is_absolute($self->{'data_dir'})
221 382 8 if ($self->data_dir) { }
243 1 389 if (my $e = delete $self->{'escape_flags'})
257 5 385 unless ($self->{'unlimited_code_cache'})
266 388 2 unless $self->preloads
269 0 3 unless 'File::Spec'->file_name_is_absolute($pattern)
279 0 3 unless @paths
283 0 6 unless $self->load($_)
292 1775 0 $self->data_dir ? :
293 384 0 $self->object_dir ? :
294 544 2 $self->data_dir ? :
300 55 710 unless (-d $dir)
302 0 55 if ($@)
320 28 355 unless (-f $object_create_marker_file)
321 0 28 unless open my $fh, ">$object_create_marker_file"
370 0 2189 unless (substr($path, 0, 1) eq '/')
380 1047 1142 unless defined $source
396 507 1 if (exists $code_cache->{$comp_id} and $self->static_source || $code_cache->{$comp_id}{'lastmod'} >= $srcmod)
402 620 15 if ($self->{'use_object_files'})
406 0 620 if (@stat and not -f _)
410 21 599 if ($self->static_source) { }
414 3 18 @stat ? :
419 114 485 @stat ? :
424 620 15 if ($objfile) { }
437 504 116 if ($objfilemod < $srcmod)
442 15 589 unless (UNIVERSAL::isa($comp, 'HTML::Mason::Component'))
443 13 2 unless (defined $@ and $@ =~ /failed in require/)
448 10 5 unless (UNIVERSAL::isa($comp, 'HTML::Mason::Component'))
449 10 0 $@ ? :
459 2 13 if $@
475 606 30 unless defined $self->{'code_cache'}{$comp_id}{'comp'}
498 6 5 if ($self->use_internal_component_caches)
515 547 16 if $self->{'unlimited_code_cache'}
517 9 7 if ($current_size > $self->code_cache_max_size)
559 1 0 if (-d $object_dir) { }
561 0 1 unless rename $object_dir, 'File::Spec'->catdir($temp_dir, 'target')
579 3 478 if (my $touch_file = $self->static_source_touch_file)
580 2 1 unless -f $touch_file
582 1 0 if ($touch_file_lastmod > $self->{'static_source_touch_file_lastmod'})
589 1 0 if ($self->use_object_files)
591 1 0 if (not -e $object_create_marker_file or (stat $object_create_marker_file)[9] < $touch_file_lastmod)
619 0 14 if exists $p{'comp_file'}
621 0 14 unless defined $p{'comp_source'}
636 0 12 if $@
646 0 8 unless @values
648 7 1 $decl =~ s/^([\$\@%])// ? :
653 8 0 if ($prefix eq '$') { }
0 0 elsif ($prefix eq '@') { }
666 17 4 if (my $new_comp_root = shift())
667 1 16 unless $self->dynamic_comp_root
671 4 14 if (@{$self->{'comp_root'};} == 1 and $self->{'comp_root'}[0][0] eq 'MAIN') { }
688 387 19 if (not ref $new_comp_root) { }
0 19 elsif (ref $new_comp_root ne 'ARRAY') { }
698 0 449 if ref $pair ne 'ARRAY'
700 0 449 if $pair->[0] =~ m[/]
703 0 449 unless 'File::Spec'->file_name_is_absolute($pair->[1])
707 39 410 if (my $orig_path = $comp_root_key_map->{$key}) { }
708 2 37 if ($path ne $orig_path)
723 73 2116 if ($self->{'static_source'}) { }
731 71 80 unless (exists $source_cache_for_root->{$path})
735 33 118 if $source = $source_cache_for_root->{$path}
740 1109 1097 if $source = $resolver->get_info($path, @$pair)
774 100 1008 if $comp
808 1 644 $ignore_expr eq '.' ? :
813 3 3 if not $_[0] =~ /$ignore_expr/
815 1 644 $ignore_expr eq '.' ? :
645 0 $ignore_expr ? :
825 22 623 if ($err) { }
838 617 28 if ($p->{'object_file'}) { }
842 1 27 if taint_is_on()
857 3 0 $comp->persistent ? :
969 1 783 if not $name =~ /^$flag_regex$/ or $name =~ /^n$/
973 783 0 if (ref $sub) { }
979 0 0 if ($sub =~ /^\w+$/) { }
982 0 0 unless (defined &{"HTML::Mason::Escapes::$sub";})
992 0 0 if $@
1015 1 23 unless exists $self->{'escapes'}{$flag}