Branch Coverage

blib/lib/Crypt/SecretBuffer.pm
Criterion Covered Total %
branch 33 106 31.1


line true false branch
47 3 1 if (@_)
59 22 0 if (@_ and ref $_[0] and ref $_[0] eq 'GLOB' || ref($_[0])->can('getc')) { }
60 0 22 unless @_ & 1
63 0 0 if @_ & 1
69 0 22 if keys %options
72 0 22 unless (defined $input_fh)
74 0 0 if ($^O eq 'MSWin32') { }
75 0 0 unless open $input_fh, "+<", "CONIN\$"
76 0 0 unless defined $prompt_fh
81 0 0 unless open $input_fh, "+<", "/dev/tty"
82 0 0 unless defined $prompt_fh
86 0 22 if (not defined $prompt_fh and defined $prompt || defined $char_mask)
92 0 0 if (-t $input_fh and defined $fd && $fd == 0 || \*STDIN == $input_fh || $^O eq 'MSWin32') { }
0 0 elsif (-S $input_fh or -t $input_fh) { }
93 0 0 if ($^O eq 'MSWin32') { }
94 0 0 unless open $prompt_fh, ">", "CONOUT\$"
97 0 0 unless open $prompt_fh, "+<", "/dev/tty"
126 0 22 if (defined $prompt)
127 0 0 unless $prompt_fh->print($prompt) and $prompt_fh->flush
132 0 22 if ($input_by_chars) { }
134 0 0 unless $ret = $self->append_read($input_fh, 1)
138 0 0 if ($self->index(qr/[\0-\x1F\x7F]/, $end_pos) == $end_pos) { }
0 0 elsif ($char_class and $self->index($char_class, $end_pos) == -1) { }
0 0 elsif ($char_max and $self->length - $start_len > $char_max) { }
142 0 0 if ($self->index(qr/[\r\n]/, $end_pos) == $end_pos) { }
0 0 elsif ($self->index(qr/[\b\x7F]/, $end_pos) == $end_pos) { }
149 0 0 if ($self->length > $start_len)
152 0 0 if (CORE::length $char_mask)
153 0 0 unless $prompt_fh->print("\b" x CORE::length($char_mask) . " " x CORE::length($char_mask) . "\b" x CORE::length($char_mask)) and $prompt_fh->flush
177 0 0 if (CORE::length $char_mask)
178 0 0 unless $prompt_fh->print($char_mask) and $prompt_fh->flush
182 0 0 if $char_count and $self->length - $start_len == $char_count
188 0 22 if ($char_max and $self->length - $start_len > $char_max)
195 0 22 if defined $prompt
198 0 17 $char_count ? :
5 17 !$ret ? :
206 0 2 unless pipe my $r, my $w
215 0 1 unless open my $fh, "<", $path
219 0 2 unless defined $got
220 1 1 if $got == 0
223 0 1 if $blocksize > 16384
225 0 1 unless close $fh
234 1 2 if (not $overwrite) { }
1 1 elsif ($overwrite eq 'rename') { }
235 1 0 if -e $path
237 0 0 unless open $fh, ">>", $path
238 0 0 if -s $fh > 0
245 1 0 CORE::length $dest_dir ? :
248 0 1 unless open $fh, ">", $path
253 0 2 unless defined $w
256 0 2 unless close $fh
257 1 1 if ($overwrite eq "rename")
258 0 1 unless rename $cur_path, $path