Condition Coverage

blib/lib/Test2/Util/Importer.pm
Criterion Covered Total %
condition 71 175 40.5


and 2 conditions

line l !l condition
493 0 0 push @sets, $arg and next
739 3249 340 defined *{"${from}::$_";}{$HEAVY_VARS{$_}} and return 0

and 3 conditions

line !l l&&!r l&&r condition
28 0 164 0 @_ and $NUMERIC{substr $_[0], 0, 1}
62 155 327 0 @_ and $NUMERIC{substr $_[0], 0, 1}
286 0 0 0 @caller and not $caller[0]->isa("Test2::Util::Importer")
320 515 1571 0 $for and $for ne $into
347 172 0 0 $got{'export_gen'} and $got{'generate'}
398 0 353 162 $export_gen and keys %$export_gen
410 0 1956 0 $sig eq "&" and $export_gen->{$name}
411 1956 0 0 $got->{'generate'} and &$generate("$sig$name")
434 0 0 0 $INC{'Exporter.pm'} and $f_import
0 0 0 $INC{'Exporter.pm'} and $f_import and $f_import == \&Exporter::import
552 0 26 0 $spec and keys %$spec
557 0 0 0 $spec->{'-as'} and @$cimp > 1
565 0 0 0 $spec->{'-prefix'} and $cspec->{'-prefix'}
566 0 0 0 $spec->{'-postfix'} and $cspec->{'-postfix'}
584 1572 0 0 $lead eq "/" and $arg =~ m[^/(.*)/$]
603 1411 157 0 $spec->{'-as'} and @list > 1
670 0 1568 0 $ref and $type ne $SIG_TO_SLOT{$sig}
675 1562 2 4 $$exclude{"$sig$name"} and not $spec->{'-as'}
757 155 20 28874 !ref($_) && ($allowed{$_} || substr($_, 0, 1, '') eq '&' && $allowed{$_})

or 2 conditions

line l !l condition
154 515 0 $params{'caller'} || [caller()]
298 0 0 $caller->[1] || 'unknown file'
299 0 0 $caller->[2] || 'unknown line'
307 0 0 $caller->[1] || 'unknown file'
308 0 0 $caller->[2] || 'unknown line'
339 0 172 $got{'export'} ||= []
340 172 0 $got{'export_ok'} ||= []
341 0 172 $got{'export_tags'} ||= {}
342 0 172 $got{'export_fail'} ||= []
343 172 0 $got{'export_anon'} ||= {}
344 0 172 $got{'export_magic'} ||= {}
349 0 172 $got{'export_gen'} ||= {}
377 515 0 $got->{'export'} || []
378 515 0 $got->{'export_ok'} || []
379 515 0 $got->{'export_tags'} || {}
380 515 0 $got->{'export_fail'} || []
381 515 0 $got->{'export_anon'} || {}
382 515 0 $got->{'export_gen'} || {}
383 515 0 $got->{'export_magic'} || {}
390 0 0 $sig ||= "&"
398 0 162 $generate ||= sub { my $symbol = shift(); my($sig, $name) = $symbol =~ /^(\W?)(.*)$/; $sig ||= "&"; my $do = $$export_gen{"$sig$name"}; $do ||= $export_gen->{$name} if not $sig or $sig eq "&"; return undef unless $do; $from->$do($into, $symbol); }
404 162 1956 $sig ||= "&"
443 0 515 $tags->{'ALL'} ||= [sort(grep({/^[\&\$\@\%\*]/;} keys %$lookup))]
448 0 0 $sig ||= "&"
643 515 0 $custom_set || eval qq[# Inherit the callers warning settings. If they have warnings and we\n# redefine their subs they will hear about it. If they do not have warnings\n# on they will not.\nBEGIN { \${^WARNING_BITS} = \$caller->[9] if defined \$caller->[9] }\n#line $caller->[2] "$caller->[1]"\nsub { *{"$into\\::\$_[0]"} = \$_[1] }\n] || die($@)
677 0 1564 $spec->{'-prefix'} || ''
0 1564 $spec->{'-postfix'} || ''
757 28874 0 *{"${from}::$_";}{'CODE'} || (return 0)

or 3 conditions

line l !l&&r !l&&!r condition
263 0 0 0 $self->{'from_file'} ||= _mod_to_file($self->{'from'})
321 1571 515 0 $self->{'menu'} || $self->reload_menu($into)
393 0 0 0 $do ||= $export_gen->{$name}
0 0 0 not $sig or $sig eq "&"
421 172 1784 0 $export_anon->{$sym} || ($sig eq '&' ? \&{$fqn;} : ($sig eq '$' ? \${$fqn;} : ($sig eq '@' ? \@{$fqn;} : ($sig eq '%' ? \%{$fqn;} : ($sig eq '*' ? \*{$fqn;} : (next))))))
429 172 343 0 $new_style || $from->can('import')
434 172 343 0 $new_style or keys %$exports
515 0 0 $new_style or keys %$exports or $from->isa("Exporter")
343 0 0 $new_style or keys %$exports or $from->isa("Exporter") or $INC{'Exporter.pm'} and $f_import and $f_import == \&Exporter::import
482 541 0 0 $menu ||= $main_menu
502 26 511 4 $is_tag or @$args
537 0 4 $is_tag or @$args or @versions
526 2 0 2 @import or keys %exclude
2 0 2 @import or keys %exclude or @versions
659 162 0 0 $ref ||= $menu->{'generate'}->($symbol)
664 1568 0 0 $ref or $menu->{'lookup'}{"$sig$name"}
677 157 1407 0 $spec->{'-as'} || $name
690 0 0 1564 $magic ||= $menu->{'magic'}{$name}

xor 4 conditions

line l&&r l&&!r !l&&r !l&&!r condition
494 0 0 0 0 push @versions, $arg xor next