Condition Coverage

blib/lib/Resource/Silo/Metadata.pm
Criterion Covered Total %
condition 56 64 87.5


and 3 conditions

line !l l&&!r l&&r condition
100 1 1 148 defined $name and not ref $name
2 3 145 defined $name and not ref $name and $name =~ /$ID_REX/i
133 7 2 0 defined $spec{$_} and croak("resource '${name}': 'literal' is incompatible with '${_}'")
154 2 1 125 ref $spec{'init'} and builtin::reftype($spec{'init'}) eq $CODE
174 120 1 2 defined $spec{'check'} and (builtin::reftype($spec{'check'}) // "") ne $CODE
176 71 48 2 defined $spec{'cleanup'} and (builtin::reftype($spec{'cleanup'}) // "") ne $CODE
178 102 15 2 defined $spec{'fork_cleanup'} and (builtin::reftype($spec{'fork_cleanup'}) // "") ne $CODE
180 102 14 1 $spec{'fork_cleanup'} and $spec{'fork_safe'}
230 12 1 0 defined $spec->{$_} and croak("resource '${name}': 'class' is incompatible with '${_}'")
252 0 5 1 defined $entry and not ref $entry
257 1 1 4 ref $entry eq "ARRAY" and @$entry <= 2
2 1 3 ref $entry eq "ARRAY" and @$entry <= 2 and ($entry->[0] // "") =~ /$ID_REX/
406 1 0 7 $res and $res->{'origin'}

or 2 conditions

line l !l condition
135 0 2 $spec{'dependencies'} //= []
136 0 2 $spec{'derived'} //= 1
137 0 2 $spec{'cleanup_order'} //= "Inf"
156 2 1 builtin::reftype($spec{'argument'}) // ""
169 6 118 $spec{'cleanup_order'} //= 0
174 2 1 builtin::reftype($spec{'check'}) // ""
176 49 1 builtin::reftype($spec{'cleanup'}) // ""
178 16 1 builtin::reftype($spec{'fork_cleanup'}) // ""
225 7 1 $spec->{'dependencies'} //= {}
257 4 0 $entry->[0] // ""
265 1 2 $entry->[1] // ""

or 3 conditions

line l !l&&r !l&&!r condition
182 14 34 68 $spec{'fork_cleanup'} //= $spec{'cleanup'}