Condition Coverage

lib/Config/Mini.pm
Criterion Covered Total %
condition 9 23 39.1


and 3 conditions

line !l l&&!r l&&r condition
465 0 2 0 defined $@ and $@

or 2 conditions

line l !l condition
335 0 4 $CONF{$current} ||= {}
341 2 14 $CONF{$current}{$key} ||= []
355 0 0 $CONF{$section} ||= {}
459 0 2 delete $args{'%constructor'} || 'new'
460 2 0 delete $args{'%package'} || $args{'package'} || (return \%args)
462 0 2 delete $args{'%noargs'} || 'false'
467 0 2 delete $args{'%hashref'} || 'false'

or 3 conditions

line l !l&&r !l&&!r condition
209 0 0 0 $$self{$key} ||= instantiate($key)
439 0 2 0 $$OBJS{$section} ||= do { my $config = $CONF{$section}; my(%args) = (); foreach my $key (keys %{$config;}) { if ($key =~ s/^\@//) { $args{$key} = $$config{"\@$key"}; } elsif ($key =~ s/^\$//) { $args{$key} = $$config{"\$$key"}[0]; } else { $args{$key} = $$config{$key}[0]; $args{"__$key"} = $$config{$key}; } ; } ; my $cons = delete $args{'%constructor'} || 'new'; my $class = delete $args{'%package'} || $args{'package'} || (return \%args); my $args = delete $args{'%args'}; my $noargs = delete $args{'%noargs'} || 'false'; eval "use $class"; warn $@ if defined $@ and $@; my $hashref = delete $args{'%hashref'} || 'false'; my(@args) = $args ? map({$args{$_};} split(/\s+/, $args, 0)) : %args; if (lc $noargs eq 'true') { $class->$cons; } elsif (lc $hashref eq 'true') { $class->$cons({@args}); } else { $class->$cons(@args); } }