Branch Coverage

blib/lib/Digest/SHA.pm
Criterion Covered Total %
branch 50 82 60.9


line true false branch
43 22 5 if defined $alg
44 9 18 if (ref $class)
45 7 2 if (not defined $alg or $alg == $class->algorithm)
49 2 0 &shainit($class, $alg) ? :
51 4 14 unless defined $alg
59 38 671 unless (defined $nbits)
63 0 709 if $nbits > length($data) * 8
84 1 0 unless (defined $_can_T_filehandle)
87 0 1 $@ ? :
88 1 0 $_can_T_filehandle ? :
90 0 0 $_can_T_filehandle ? :
103 0 2 unless defined $n
111 2 4 unless ref \$file eq 'SCALAR'
113 4 0 defined $mode ? :
123 0 4 -d $file ? :
0 4 unless $file eq '-' and open FH, '< -' or sysopen FH, $file, -d $file ? 2 : 0
127 2 2 if ($BITS)
133 0 2 unless defined $n
138 2 0 if $binary or $UNIVERSAL
139 1 1 if ($UNIVERSAL and _istext(*FH, $file)) { }
151 0 4 unless my $alg = $self->algorithm
152 0 4 unless my $state = $self->_getstate
153 2 2 $alg <= 256 ? :
154 2 2 $alg <= 256 ? :
155 2 2 $alg <= 256 ? :
159 0 32 unless defined $_
181 8 88 if /^(#|$)/
188 0 11 unless grep {$_ == $s{'alg'};} 1, 224, 256, 384, 512, 512224, 512256
189 7 4 $s{'alg'} <= 256 ? :
0 11 unless length $s{'H'} == ($s{'alg'} <= 256 ? 64 : 128)
190 7 4 $s{'alg'} <= 256 ? :
0 11 unless length $s{'block'} == ($s{'alg'} <= 256 ? 128 : 256)
194 0 55 unless 0 <= $s{$_}
195 0 55 unless $s{$_} <= 4294967295
197 7 4 $s{'alg'} <= 256 ? :
0 11 unless $s{'blockcnt'} < ($s{'alg'} <= 256 ? 512 : 1024)
217 0 0 unless my $state = $self->getstate
218 0 0 if not defined $file or $file eq ''
221 0 0 unless open FH, "> $file"
232 0 0 if not defined $file or $file eq ''
235 0 0 unless open FH, "< $file"