Branch Coverage

blib/lib/Term/ReadLine/Simple.pm
Criterion Covered Total %
branch 18 282 6.3


line true false branch
22 0 4 if ($^O eq 'MSWin32') { }
79 0 53 unless (defined $opt)
86 1 80 unless (exists $valid->{$key})
89 11 69 unless (defined $opt->{$key})
92 15 54 if (ref $opt->{$key})
93 0 15 if ($valid->{$key} eq 'ARRAY')
98 27 27 if ($valid->{$key} eq '')
101 9 18 unless ($opt->{$key} =~ /^$valid->{$key}\z/x)
111 0 0 if ($self->{'reinit_encoding'})
119 0 3 if exists $self->{'enter_row'}
120 0 3 if exists $self->{'enter_col'}
121 3 0 if (defined $self->{'plugin'})
129 53 0 if (defined $opt)
130 0 53 if (ref $opt ne 'HASH')
155 0 0 if (defined $prompt) { }
156 0 0 if ref $prompt
161 0 0 if (defined $opt)
162 0 0 if (not ref $opt) { }
0 0 elsif (ref $opt ne 'HASH') { }
174 0 0 unless defined $opt->{'default'}
175 0 0 unless defined $opt->{'no_echo'}
188 0 0 if ($self->{'beep'})
197 0 0 unless (defined $key)
202 0 0 if $key == -1
203 0 0 if $key == 9
204 0 0 if ($key == 127 or $key == 8) { }
0 0 elsif ($key == 21) { }
0 0 elsif ($key == 11) { }
0 0 elsif ($key == 346 or $key == 4) { }
0 0 elsif ($key == 339 or $key == 6) { }
0 0 elsif ($key == 337 or $key == 2) { }
0 0 elsif ($key == 335 or $key == 5) { }
0 0 elsif ($key == 336 or $key == 1) { }
0 0 elsif ($key == 338 or $key == 340) { }
205 0 0 if ($pos) { }
214 0 0 if ($pos) { }
223 0 0 if ($pos < $str->length) { }
231 0 0 if ($str->length) { }
232 0 0 if ($pos < $str->length) { }
246 0 0 if ($pos < $str->length) { }
254 0 0 if ($pos) { }
262 0 0 if ($pos < $str->length) { }
270 0 0 if ($pos > 0) { }
283 0 0 if ($key eq "\n" or $key eq "\r") { }
286 0 0 if ($self->{'compat'} or not defined $self->{'compat'} and $ENV{'READLINE_SIMPLE_COMPAT'})
307 0 0 if ($print_str->substr(0, $print_pos)->columns > $self->{'avail_width_value'} / 4) { }
317 0 0 if ($b)
320 0 0 if ($e)
325 0 0 if ($opt->{'mark_curr'}) { }
334 0 0 if (&any(sub { $_ == $self->{'curr_row'} - @{$self->{'pre_list'};}; } , @{$$opt{'ro'};}))
337 0 0 if ($opt->{'no_echo'}) { }
338 0 0 if ($opt->{'no_echo'} == 2)
359 0 0 if ($i < @{$self->{'pre_list'};})
362 0 0 if $len->[$i] > $longest
373 0 0 if (defined $opt->{'main_prompt'})
378 0 0 if ($self->{'avail_height'} < $min_avail_height)
379 0 0 if ($backup_height > $min_avail_height) { }
387 0 0 if (@$list > $self->{'avail_height'}) { }
389 0 0 if (@$list % ($self->{'avail_height'} - 1))
404 0 0 if ($prompt eq '')
410 0 0 if (not $prompt =~ /\n/ and 'Unicode::GCString'->new($prompt)->columns <= $self->{'avail_width'}) { }
436 0 0 unless (defined $default)
447 0 0 if ($self->{'curr_row'} < @{$self->{'pre_list'};}) { }
461 0 0 if ($idx < @{$self->{'pre_list'};}) { }
465 0 0 defined $list->[$idx][1] ? :
469 0 0 if (&any(sub { $_ == $idx - @{$self->{'pre_list'};}; } , @{$$opt{'ro'};}))
482 0 0 if ($self->{'pages'} > 1) { }
483 0 0 if ($self->{'avail_height'} - ($self->{'end_row'} + 1 - $self->{'begin_row'}))
488 0 0 if (length $page_number > $self->{'avail_width'})
504 0 0 if ($self->{'len_longest_key'} > $self->{'avail_width'} / 3)
508 0 0 if (@{$opt->{'ro'};})
510 0 0 if $tmp > $len_separator
514 0 0 $opt->{'auto_up'} == 2 ? :
517 0 0 if ($self->{'end_row'} > $#$list)
520 0 0 if (defined $opt->{'main_prompt'})
529 0 0 if (not defined $orig_list) { }
0 0 elsif (ref $orig_list ne 'ARRAY') { }
535 0 0 if (defined $opt and ref $opt ne 'HASH')
551 0 0 unless defined $opt->{'prompt'}
552 0 0 unless defined $opt->{'back'}
553 0 0 unless defined $opt->{'confirm'}
554 0 0 unless defined $opt->{'auto_up'}
555 0 0 unless defined $opt->{'ro'}
560 0 0 if (length $opt->{'back'})
574 0 0 if (&any(sub { $_ == $self->{'curr_row'} - @{$self->{'pre_list'};}; } , @{$$opt{'ro'};}))
577 0 0 if ($self->{'beep'}) { }
585 0 0 unless (defined $key)
590 0 0 if $key == -1
591 0 0 if $key == 9
593 0 0 if ($tmp_maxcols != $maxcols or $tmp_maxrows != $maxrows and $tmp_maxrows < @$list + 1)
600 0 0 if ($key == 127 or $key == 8) { }
0 0 elsif ($key == 21) { }
0 0 elsif ($key == 11) { }
0 0 elsif ($key == 346 or $key == 4) { }
0 0 elsif ($key == 339) { }
0 0 elsif ($key == 337) { }
0 0 elsif ($key == 335 or $key == 5) { }
0 0 elsif ($key == 336 or $key == 1) { }
0 0 elsif ($key == 338) { }
0 0 elsif ($key == 340) { }
0 0 elsif ($key == 333 or $key == 2) { }
0 0 elsif ($key == 334 or $key == 6) { }
601 0 0 if ($locked) { }
0 0 elsif ($pos) { }
613 0 0 if ($locked) { }
0 0 elsif ($pos) { }
625 0 0 if ($locked) { }
0 0 elsif ($pos < $str->length) { }
636 0 0 if ($str->length) { }
637 0 0 if ($locked) { }
0 0 elsif ($pos < $str->length) { }
654 0 0 if ($pos < $str->length) { }
662 0 0 if ($pos) { }
670 0 0 if ($pos < $str->length) { }
678 0 0 if ($pos > 0) { }
686 0 0 if ($self->{'curr_row'} == 0) { }
692 0 0 if ($self->{'curr_row'} >= $self->{'begin_row'}) { }
702 0 0 if ($self->{'curr_row'} == $#$list) { }
708 0 0 if ($self->{'curr_row'} <= $self->{'end_row'}) { }
719 0 0 if ($self->{'page'} == 1) { }
720 0 0 if ($self->{'curr_row'} == 0) { }
738 0 0 if ($self->{'page'} == $self->{'pages'}) { }
739 0 0 if ($self->{'curr_row'} == $#$list) { }
759 0 0 if ($key eq "\n" or $key eq "\r") { }
761 0 0 if $self->{'nr_prompt_lines'}
762 0 0 if ($$list[$self->{'curr_row'}][0] eq $opt->{'back'}) { }
0 0 elsif ($$list[$self->{'curr_row'}][0] eq $opt->{'confirm'}) { }
773 0 0 if ($self->{'compat'} or not defined $self->{'compat'} and $ENV{'READLINE_SIMPLE_COMPAT'})
778 0 0 if ($opt->{'auto_up'} == 2) { }
0 0 elsif ($self->{'curr_row'} == $#$list) { }
779 0 0 if ($self->{'curr_row'} == 0) { }
798 0 0 if ($opt->{'auto_up'} == 1)
799 0 0 if (defined $self->{'enter_row'} and $self->{'enter_row'} == $self->{'curr_row'} and defined $self->{'enter_col'} and $self->{'enter_col'} == $pos) { }
812 0 0 if ($self->{'curr_row'} <= $self->{'end_row'}) { }
823 0 0 if ($locked) { }
847 0 0 if $self->{'end_row'} > $#$list
857 0 0 if $self->{'begin_row'} < 0
870 0 0 if ($key_length > $self->{'len_longest_key'}) { }
0 0 elsif ($key_length < $self->{'len_longest_key'}) { }
886 0 0 if ($gcs->columns <= $len)
894 0 0 if ($len - 3 < ($cols += $gc->columns))