Branch Coverage

blib/lib/Template/Alloy/Compile.pm
Criterion Covered Total %
branch 87 112 77.6


line true false branch
72 1744 1 if ($$doc{'_filename'})
74 9 1735 if ($$self{'COMPILE_DIR'} or $$self{'COMPILE_EXT'})
76 4 5 if ($$self{'COMPILE_DIR'}) { }
1 4 elsif ($$doc{'_is_str_ref'}) { }
77 0 4 if $^O eq 'MSWin32'
82 7 2 if defined $$self{'COMPILE_EXT'}
83 9 0 if defined $Template::Alloy::PERL_COMPILE_EXT
85 1 8 if (-e $file and $$doc{'_is_str_ref'} || (stat $file)[9] == $$doc{'modtime'}) { }
96 8 1689 if ($$doc{'_compile_filename'})
99 0 8 unless (-d $dir)
103 0 8 unless open my $fh, '>', $$doc{'_compile_filename'}
105 1 7 if ($$self{'ENCODING'} and eval { do { require Encode } } and defined &Encode::encode) { }
115 0 0 if not $perl and $@
132 107 1589 if $$self{'_blocks'}
133 46 1650 if $$self{'_meta'}
138 107 1589 $$self{'_blocks'} ? :
46 1650 $$self{'_meta'} ? :
186 1359 3724 unless (ref $node)
193 8 3716 if ($$self{'_debug_dirs'} and not $$self{'_debug_off'})
208 3724 0 if ($func = $$DIRECTIVES{$$node[0]}) { }
213 0 0 if ($func = $$Template::Alloy::Play::DIRECTIVES{$$node[0]}) { }
231 0 305 unless $directive =~ /^\w+$/
296 0 1 if ($text eq 'on') { }
0 1 elsif ($text eq 'off') { }
1 0 elsif ($text eq 'format') { }
342 0 25 unless @$filter
349 6 19 if (length $name)
378 23 67 unless (defined $name)
388 67 23 if (defined $name) { }
411 27 13 if ($$node[0] eq 'ELSE') { }
448 6 15 unless ref $ref
474 0 34 if (not $sub_tree && $$sub_tree[0]) { }
23 17 elsif (ref $$sub_tree[0] and $$sub_tree[0][0] eq 'BLOCK') { }
524 46 46 if (my $kp = $$node[3])
525 46 0 if ref $kp eq 'ARRAY'
537 2 0 if $type eq 'FOREACH'
594 0 5 if (defined $$node[3]) { }
612 3 424 if ($$self{'_is_default'})
618 9 418 if (not defined $val) { }
28 390 elsif ($$node[4] and $val == $$node[4]) { }
622 1 27 if $$sub_tree[0] and $$sub_tree[0][0] eq 'BLOCK'
633 0 427 if ($$Template::Alloy::OP_DISPATCH{$op})
640 3 424 if ($$self{'_is_default'})
666 3 7 unless (defined $$node[3])
672 1 6 $i++ ? :
682 3 7 if ($default)
684 0 3 $i++ ? :
688 9 1 if $i
699 0 35 unless _is_empty_named_args($named)
726 3 45 if ($$node[0] eq 'FINAL')
735 44 6 if (@names) { }
747 8 37 if (defined $names[$i]) { }
770 3 47 if ($final)
804 0 35 if (ref $key)
805 0 0 if (@$key == 2 and not ref $$key[0] and not $$key[1]) { }
843 28 0 if ($$node[4])