Branch Coverage

blib/lib/Math/MatrixLUP.pm
Criterion Covered Total %
branch 112 182 61.5


line true false branch
23 0 9 $_[2] ? :
28 0 0 $_[2] ? :
35 0 3 if $_[2]
36 0 3 if $_[2]
41 2 3 if $_[2]
42 3 4 if $_[2]
44 0 4 $_[2] ? :
45 1 2 $_[2] ? :
59 14 124 if (ref $matrix eq 'ARRAY' and not @$matrix) { }
64 0 124 unless ref $matrix eq 'ARRAY' and ref $matrix->[0] eq 'ARRAY'
82 11 1 unless (defined $callback)
103 1 4 if ($n <= 0)
117 0 0 if ($row_count <= 0)
127 0 2 unless ref $vector eq 'ARRAY'
136 2 6 unless ref $self
144 0 0 unless ref $vector eq 'ARRAY'
153 0 6 unless ref $self
166 0 1 unless ref $vector eq 'ARRAY'
178 0 1 unless ref $vector eq 'ARRAY'
200 1 1 unless ref $self
202 0 1 unless $self->{'is_square'}
211 1 1 unless ref $self
213 0 1 unless $self->{'is_square'}
224 0 4 unless ref $vector eq 'ARRAY'
228 0 4 unless $#{$vector;} == $self->{'rows'}
243 0 0 unless ref $vector eq 'ARRAY'
247 0 0 unless $#{$vector;} == $self->{'cols'}
277 0 10 unless ref $m1 eq ref $m2
279 0 10 unless $m1->{'rows'} == $m2->{'rows'}
280 2 8 unless $m1->{'cols'} == $m2->{'cols'}
294 4 84 unless $Ai->[$j] == $Bi->[$j]
304 0 28 unless ref $m1 eq ref $m2
316 6 22 $r1 < $r2 ? :
317 6 22 $c1 < $c2 ? :
326 12 136 if $cmp
329 10 29 if ($c1 != $c2)
377 102 180 if ($absA > $maxA)
383 23 58 if ($imax != $i)
393 0 201 if ($A[$i][$i] == 0)
421 0 2 unless @m
427 0 8 unless $j < $cols
432 0 0 unless ++$i == $rows
434 0 0 if ++$j == $cols
448 8 24 if $i == $r
492 0 3 unless ref $m1 eq ref $m2
496 0 3 unless $m1->{'rows'} == $m2->{'rows'}
681 4 2 if (ref $m2 ne ref $m1)
692 0 2 unless $rows == $m2->{'rows'} and $cols == $m2->{'cols'}
710 6 2 if ($r1 ne $r2)
711 2 4 if ($r1 eq 'Math::MatrixLUP')
716 4 0 if ($r2 eq 'Math::MatrixLUP')
728 0 2 unless $rows == $m2->{'rows'} and $cols == $m2->{'cols'}
743 2 0 if (ref $m2 ne ref $m1)
754 0 0 unless $rows == $m2->{'rows'} and $cols == $m2->{'cols'}
769 2 0 if (ref $m2 ne ref $m1)
780 0 0 unless $rows == $m2->{'rows'} and $cols == $m2->{'cols'}
795 2 0 if (ref $m2 ne ref $m1)
806 0 0 unless $rows == $m2->{'rows'} and $cols == $m2->{'cols'}
824 1 2 if ($r1 ne $r2)
826 1 0 if ($r1 eq 'Math::MatrixLUP')
840 0 2 unless $rows == $m2->{'rows'} and $cols == $m2->{'cols'}
858 1 2 if ($r1 ne $r2)
860 1 0 if ($r1 eq 'Math::MatrixLUP')
874 0 2 unless $rows == $m2->{'rows'} and $cols == $m2->{'cols'}
889 5 23 if (ref $m2 ne ref $m1)
903 0 23 unless $m1->{'cols'} == $m2->{'rows'}
911 162 306 if (not defined $c[$i][$j]) { }
930 4 1 if ($r1 ne $r2)
932 2 2 if ($r1 eq 'Math::MatrixLUP')
937 2 0 if ($r2 eq 'Math::MatrixLUP')
954 10 16 if $_ != $t and $_ < 0
972 4 4 if $_ != $t and $_ > 0
987 3 0 if ($r1 ne $r2)
989 2 1 if ($r1 eq 'Math::MatrixLUP')
994 1 0 if ($r2 eq 'Math::MatrixLUP')
1010 2 4 if $neg and $pow == 1
1014 0 4 if $pow == 0
1017 7 7 if $pow & 1
1018 4 10 unless $pow >>= 1
1022 0 4 $neg ? :
1029 0 0 if $pow < 0
1033 0 0 if $pow == 0
1036 0 0 if $pow & 1
1037 0 0 unless $pow >>= 1
1047 0 1 unless $self->{'is_square'}
1048 0 1 unless ref $vector eq 'ARRAY'
1049 0 1 unless $#{$vector;} == $self->{'rows'}
1074 0 7 unless $self->{'is_square'}
1084 3 6 $P->[$i] == $j ? :
1110 0 18 unless $self->{'is_square'}
1121 12 4 if (($$P[$N + 1] - $N) % 2 == 0)