Branch Coverage

blib/lib/Algorithm/BitVector.pm
Criterion Covered Total %
branch 33 226 14.6


line true false branch
50 0 0 if ($num_bytes_read) { }
51 0 0 if (CORE::length $bitstring < $blocksize)
66 0 0 if ($num_bytes_read) { }
79 0 3 if _check_for_illegal_params(@params) == 0
92 0 3 if ($self->{'filename'}) { }
1 2 elsif (defined $self->{'intVal'}) { }
1 1 elsif (defined $self->{'size'}) { }
0 1 elsif ($self->{'bitlist'}) { }
0 1 elsif (defined $self->{'bitstring'}) { }
1 0 elsif (defined $self->{'textstring'}) { }
0 0 elsif (defined $self->{'hexstring'}) { }
96 0 0 if $self->{'intVal'} or $self->{'size'} or $self->{'bitlist'} or $self->{'bitstring'} or $self->{'hexstring'} or $self->{'textstring'}
97 0 0 unless open $self->{'FILEIN'}, "< $self->{'filename'}"
105 0 1 if $self->{'filename'} or $self->{'bitlist'} or $self->{'bitstring'} or $self->{'hexstring'} or $self->{'textstring'}
106 0 1 if ($self->{'intVal'} == 0 and not defined $self->{'size'}) { }
112 0 1 if (ref $self->{'intVal'} eq 'Math::BigInt' and not defined $self->{'size'}) { }
0 1 elsif (ref $self->{'intVal'} eq 'Math::BigInt' and defined $self->{'size'}) { }
121 0 0 if $self->{'size'} < CORE::length $bitlist_str
128 0 1 if (defined $self->{'size'}) { }
131 0 0 if $self->{'size'} < CORE::length $bitlist_str
146 0 1 if $self->{'filename'} or $self->{'intVal'} or $self->{'bitlist'} or $self->{'bitstring'} or $self->{'hexstring'} or $self->{'textstring'}
154 0 0 if $self->{'filename'} or $self->{'intVal'} or $self->{'size'} or $self->{'bitstring'} or $self->{'hexstring'} or $self->{'textstring'}
160 0 0 if $self->{'filename'} or $self->{'intVal'} or $self->{'size'} or $self->{'bitlist'} or $self->{'hexstring'} or $self->{'textstring'}
168 0 1 if $self->{'filename'} or $self->{'intVal'} or $self->{'size'} or $self->{'bitlist'} or $self->{'hexstring'} or $self->{'bitstring'}
169 0 5 CORE::length $_ == 8 ? :
179 0 0 if $self->{'filename'} or $self->{'intVal'} or $self->{'size'} or $self->{'bitlist'} or $self->{'textstring'} or $self->{'bitstring'}
180 0 0 CORE::length $_ == 4 ? :
201 0 60 unless $val =~ /\d/ and $val == 0 || $val == 1
202 0 60 if $posn >= $self->{'size'} or $posn < -$self->{'size'}
203 0 60 if $posn < 0
207 25 35 if (($cv >> $shift & 1) != $val)
220 60 5 unless (ref $pos eq 'ARRAY')
221 0 60 if $pos >= $self->{'size'} or $pos < -$self->{'size'}
222 0 60 if $pos < 0
245 0 0 unless @$index_range - 1 == $values_bv->length
262 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
272 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
294 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
310 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
315 0 0 if ($bv1->{'size'} < $bv2->{'size'}) { }
0 0 elsif ($bv1->{'size'} > $bv2->{'size'}) { }
348 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
353 0 0 if ($bv1->{'size'} < $bv2->{'size'}) { }
0 0 elsif ($bv1->{'size'} > $bv2->{'size'}) { }
377 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
382 0 0 if ($bv1->{'size'} < $bv2->{'size'}) { }
0 0 elsif ($bv1->{'size'} > $bv2->{'size'}) { }
404 0 0 unless $self->{'_iter_called'}
423 0 0 if ($self->[1] >= $bitvec->{'size'})
444 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
448 0 0 if $self->{'size'} % 2
465 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
470 0 0 if &max(@$permute_list) > $self->{'size'} - 1
484 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
489 0 0 if &max(@$permute_list) > $self->{'size'} - 1
491 0 0 unless $self->{'size'} == @$permute_list
504 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
511 0 0 unless $self->{'FILEOUT'}
512 0 0 if $self->{'size'} % 8
526 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
530 0 0 unless $self->{'FILEIN'}
539 0 1 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
543 0 1 if (defined $self->{'intVal'} and ref $self->{'intVal'} eq 'Math::BigInt') { }
560 0 1 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
564 0 1 if $self->{'size'} % 8
586 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
590 0 0 if $self->{'size'} % 4
611 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
616 0 0 unless $self->{'filename'}
617 0 0 if $blocksize % 8
619 0 0 if (CORE::length $bitstr == 0) { }
631 0 0 unless $self->{'size'}
632 0 0 if $n < 0
643 0 0 unless $self->{'size'}
644 0 0 if $n < 0
685 0 0 if $n < 0
709 0 0 unless $val == 0 or $val == 1
738 0 0 if $intval == 0
753 0 0 if int $self == 0 and int $other == 0
756 0 0 if $self->{'size'} != $other->{'size'}
767 0 0 if $self->{'size'} != $other->{'size'}
776 0 0 if $self->{'size'} != $other->{'size'}
788 0 0 unless $from_index >= 0
797 0 0 if ($h) { }
801 0 0 if $h & $m
820 0 0 unless $self->get_bit($position)
829 0 0 if int $self == 0
831 0 0 if int $bv == 0
838 0 0 if $self->count_bits_sparse == 1
860 0 0 if $a < $b
882 0 0 if ($num != 1) { }
969 0 0 if ($enum[$i + 1])
985 0 0 if $mod->{'size'} > $n + 1
991 0 0 if ($remainder->next_set_bit(0) == -1) { }
996 0 0 if ($remainder_highest_power < $mod_highest_power or int $remainder == 0) { }
1007 0 0 if ($remainder->{'size'} > $n)
1047 0 0 if (int $num != 1) { }
1060 0 0 if $self->{'size'} == 0
1064 0 0 if ($previous_bit == 0) { }
1072 0 0 if ($bit == 0 and $previous_bit == 0) { }
0 0 elsif ($bit == 1 and $previous_bit == 0) { }
0 0 elsif ($bit == 0 and $previous_bit == 1) { }
1107 0 0 if $p > 2147483647
1111 0 0 if $p == 1
1114 0 0 if $a == $p
1116 0 0 if &any(sub { $p % $_ == 0; } , @probes)
1124 0 0 if $a_raised_to_q == 1 or $a_raised_to_q == $p - 1
1129 0 0 if ($a_raised_to_jq == $p - 1)
1134 0 0 unless $primeflag
1149 0 0 if &any(sub { $_ > 268435455; } , int $base, int $exponent, int $mod)
1154 0 0 if int $b & 1
1192 3 9 if ($param eq $legal)
1197 0 3 if $found_match_flag == 0