Condition Coverage

blib/lib/Plate.pm
Criterion Covered Total %
condition 135 152 88.8


and 2 conditions

line l !l condition
142 1 1 $pre && 'pre'
143 1 1 $pre && '%'
151 3 4 $pre && '%'
199 1 2 $pre && 'pre'

and 3 conditions

line !l l&&!r l&&r condition
122 178 305 31 not $pre and @Plate::_l
483 7 24 not $pre and @Plate::_l and $Plate::_l[0] <= $+[1]
124 14 10 16 @Plate::_l and $Plate::_l[0] <= $+[1]
183 19 4 2 $pre and $nl
192 35 6 1 $pre and $nl
207 57 7 17 $pre and @expr
211 120 1 128 not $pre and $Plate::_s->{'chomp'}
216 48 166 17 not $pre and @Plate::_l
214 12 5 not $pre and @Plate::_l and $Plate::_l[0] <= $+[0]
218 5 0 4 @Plate::_l and $Plate::_l[0] <= $+[0]
294 6 2 7 -f $cache and ($_[0]{'mod'}{$_[1]} // (stat _)[9]) >= $_n
353 10 0 9 $_[1] and not length $vol
10 7 2 $_[1] and not length $vol and length $dir[0] || @dir == 1
744 4 1 3 $_[0]{'cache_code'} and not $_[0]{'static'}
5 2 1 $_[0]{'cache_code'} and not $_[0]{'static'} and exists $_[0]{'mod'}{$_[1]}
827 1 1 1 defined $v and $v =~ /^[A-Z_a-z][0-9A-Z_a-z]*(?:::[0-9A-Z_a-z]+)*$/u
838 1 0 39 -d $dir and -r _
839 29 3 7 $self->{'static'} and $self->{'static'} eq 'auto'

or 2 conditions

line l !l condition
110 22 45 $stmt //= q[local$Plate::_b='';]
196 28 216 ($12 // $13) // ''
198 1 2 $stmt // ''
340 21 116 pop() // \&Plate::_empty
656 6 92 shift() // \&Plate::_empty
784 3 2 $v //= ''
815 5 1 &Scalar::Util::reftype($ref) // 'CODE'
4 2 $sigil{&Scalar::Util::reftype($ref) // 'CODE'} // '$'
827 1 1 $v // ''
838 1 0 $! || 'Not accessable'
841 2 2 $self->{'static'} ||= 'auto'
854 1 8 $self->{'static'} ||= 'auto'

or 3 conditions

line l !l&&r !l&&!r condition
166 41 58 1 $8 // $Plate::_s->{'auto_filter'}
173 13 14 41 $pre or $fix_line_num
196 8 28 216 $12 // $13
271 10 1 2 not $dir =~ s[/[^/]*$][]u or -d $_[0]{'cache_path'} . $dir
274 1 1 0 mkdir $_ or umask $umask, croak("Can't create cache directory ${_}: $!")
290 3 0 1 do $cache // croak($@ ? $@ . 'Plate compilation failed' : "Couldn't load ${cache}: $!")
291 3 1 0 $plate // croak("Plate template '$_[1]' does not exist")
293 2 13 3 $_[2] // (stat $plate)[9]
15 3 0 ($_[2] // (stat $plate)[9]) // croak("Can't read ${plate}: $!")
294 4 5 0 $_[0]{'mod'}{$_[1]} // (stat _)[9]
295 6 0 1 do $cache // croak($@ ? $@ . 'Plate compilation failed' : "Couldn't load ${cache}: $!")
296 3 3 0 $_[0]{'mod'}{$_[1]} //= $_n
302 7 0 3 $_[0]{'static'} or exists $_[0]{'mod'}{$_[1]}
309 134 11 1 $_[0]{'mem'}{$_[1]} //= $_[0]->_load($_[1])
6 140 5 $_[0]{'static'} or not exists $_[0]{'mod'}{$_[1]}
312 2 1 0 $_[0]{'mem'}{$_[1]} //= $_[0]->_load($_[1], $mod)
318 6 23 0 $Plate::_s->{'mem'}{$_[0]} // $Plate::_s->_load($_[0])
345 119 1 0 $Plate::_s->{'filters'}{$f} // croak("No '${f}' filter defined")
351 0 1 1 length $vol || !$_[1]
353 7 1 1 length $dir[0] || @dir == 1
747 5 1 0 $_[0]->_plate_file($_[1]) // $_[0]->_cache_file($_[1])
795 3 1 1 ref $code eq 'CODE' or $code = $code =~ /(.*)::(.*)/u ? $1->can($2) : do { my($i, $p) = 0; ++$i while 'Plate' eq ($p = caller $i); $p->can($code) }