Condition Coverage

blib/lib/Math/BigInt/Lite.pm
Criterion Covered Total %
condition 97 221 43.8


and 3 conditions

line !l l&&!r l&&r condition
134 0 0 0 defined $a and $a == 0
235 0 0 0 defined $cmp && $_[2]
268 0 2 0 @_ == 1 and ref $_[0] eq "HASH"
301 0 0 26 @_ and ref $_[0] || $_[0] =~ /^[a-z]\w*(?:::[a-z]\w*)*$/i
335 14 2 16 @args and $a != 1
355 0 0 8 @_ and ref $_[0] || $_[0] =~ /^[a-z]\w*(?:::[a-z]\w*)*$/i
367 0 12 4 defined builtin::blessed($arg) and $arg->isa($upgrade)
387 697 966 12716 CORE::length $wanted <= $MAX_NEW_LEN and $wanted =~ /^[+-]?[0-9]{1,$MAX_NEW_LEN}(\.0*)?\z/
411 0 2960 0 defined $upgrade and not $x->isa($class)
423 0 627 0 defined $upgrade and not $x->isa($class)
449 0 0 0 defined $upgrade and not $x->isa($class)
488 0 0 0 defined $upgrade and not $x->isa($class)
527 0 0 0 defined $upgrade and not $x->isa($class)
539 0 2 0 defined $upgrade and not $x->isa($class)
564 385 0 13 not ref $_[0] and $_[0] =~ /^Math::BigInt::Lite/
574 0 45 353 $x->isa($class) and $y->isa($class)
595 35 0 2 not ref $_[0] and $_[0] =~ /^Math::BigInt::Lite/
605 0 3 34 $x->isa($class) and $y->isa($class)
606 3 34 0 $up == 0 and abs $$x >= $MAX_MUL || abs $$y >= $MAX_MUL
689 3 1 8 defined $_[0] and $_[0] =~ /^\s*([+-])\s*$/
713 0 5 90 ref $_[0] && ref $_[0] eq ref $_[1]
717 0 5 90 $x->isa($class) && $y->isa($class)
0 90 5 defined $upgrade and not $x->isa($class) && $y->isa($class)
725 0 5 7 ref $_[0] && ref $_[0] eq ref $_[1]
729 0 5 7 $x->isa($class) && $y->isa($class)
0 7 5 defined $upgrade and not $x->isa($class) && $y->isa($class)
984 26 0 0 ref $b and $b->isa($class)
1047 0 1 14 ref $_[0] && ref $_[0] eq ref $_[1]
1050 0 1 14 $x->isa($class) and $y->isa($class)
1060 0 6 16 ref $_[0] && ref $_[0] eq ref $_[1]
1063 0 6 16 $x->isa($class) and $y->isa($class)
1073 0 6 15 ref $_[0] && ref $_[0] eq ref $_[1]
1076 0 6 15 $x->isa($class) and $y->isa($class)
1142 50 23 17 $$rem != 0 and ($$x <=> 0) != ($$y <=> 0)
1170 26 8 8 $$rem != 0 and ($$x <=> 0) != ($$y <=> 0)
1270 0 6 0 defined $upgrade and not $x->isa($class)
1294 0 6 0 defined $upgrade and not $x->isa($class)
1310 0 5 0 defined $upgrade and not $x->isa($class)
1330 0 0 0 defined $upgrade and not $x->isa($class)
1355 0 0 0 defined $upgrade and not $x->isa($class)
1388 0 0 0 defined $upgrade and not $x->isa($class)
1422 0 0 0 defined $upgrade and not $x->isa($class)
1434 0 0 0 defined $upgrade and not $x->isa($class)
1556 38 0 0 not ref $_[0] and $_[0] =~ /^[A-Za-z]|::/
1567 5 7 26 defined $base and $base->isa($class)
1601 0 5 26 defined $base and $base->isa($class)
1610 0 2 25 defined $y and $y->isa($class)
1611 0 2 25 defined $z and $z->isa($class)
1620 0 3 157 defined $y and $y->isa($class)
1629 0 3 26 defined $y and $y->isa($class)

or 2 conditions

line l !l condition
109 77 0 ref $self || $self || __PACKAGE__
128 0 0 ref $x || $x || __PACKAGE__
164 0 0 ref $x || $x || __PACKAGE__
1237 2 7 $s || '+'

or 3 conditions

line l !l&&r !l&&!r condition
152 0 0 0 $x->{'_a'} || ${"${class}::accuracy";}
186 0 0 0 $x->{'_p'} || ${"${class}::precision";}
276 1 0 1 $param eq "lib" or $param eq "lib_version"
301 0 26 0 ref $_[0] || $_[0] =~ /^[a-z]\w*(?:::[a-z]\w*)*$/i
355 0 8 0 ref $_[0] || $_[0] =~ /^[a-z]\w*(?:::[a-z]\w*)*$/i
570 0 0 398 defined $r[0] or defined $r[1]
0 0 398 defined $r[0] or defined $r[1] or defined $accuracy
0 0 398 defined $r[0] or defined $r[1] or defined $accuracy or defined $precision
601 0 0 37 defined $r[0] or defined $r[1]
0 0 37 defined $r[0] or defined $r[1] or defined $accuracy
0 0 37 defined $r[0] or defined $r[1] or defined $accuracy or defined $precision
606 0 0 34 abs $$x >= $MAX_MUL || abs $$y >= $MAX_MUL
625 0 0 6 defined $r[0] or defined $r[1]
0 0 6 defined $r[0] or defined $r[1] or defined $accuracy
0 0 6 defined $r[0] or defined $r[1] or defined $accuracy or defined $precision
814 0 0 0 $selfref || $self
861 0 0 0 $selfref || $self
908 0 0 0 $selfref || $self
995 8 0 18 $b != 2 or $$y < 0
1018 6 0 6 $b != 2 or $$y < 0
1654 0 3 0 ref $self || $self