Branch Coverage

blib/lib/Term/Choose.pm
Criterion Covered Total %
branch 8 554 1.4


line true false branch
21 0 3 if ($^O eq 'MSWin32') { }
33 0 3 if ($? == 255)
34 0 0 if ($^O eq 'MSWin32') { }
0 0 elsif (&TERM_READKEY()) { }
54 0 113 if @_ > 1
56 111 2 if (defined $opt)
57 0 111 if ref $opt ne "HASH"
60 113 37 if defined $opt->{$key}
154 0 0 if ($self->{'ll'}) { }
159 0 0 if ($self->{'color'})
163 0 0 unless ($_)
164 0 0 unless defined $_
165 0 0 unless length $_
167 0 0 if ($self->{'color'})
184 0 0 if ($self->{'ll'}) { }
192 0 0 if $length_elements->[$i] > $longest
214 0 0 if (defined $self->{'plugin'})
217 0 0 if ($clear_choose)
219 0 0 if $up
222 0 0 if (exists $self->{'backup_instance_defaults'})
225 0 0 if ($key eq 'plugin' or $key eq 'backup_instance_defaults') { }
0 0 elsif (exists $instance_defaults->{$key}) { }
242 0 0 unless defined $term_width
243 0 0 unless defined $term_height
251 0 0 if (defined $self->{'skip_items'})
253 0 0 if ($self->{'list'}[$idx] =~ /$self->{'skip_items'}/)
257 0 0 unless (defined $key)
260 0 0 if ref $key ne "ARRAY"
267 0 0 if (defined $self->{'max_cols'} and $self->{'max_cols'} == 1)
270 0 0 if ($self->{'max_height'} and $self->{'max_height'} < $self->{'keep'})
273 0 0 if (length $self->{'footer'} and $self->{'page'} != 2)
276 0 0 if ($self->{'page'} == 2 and not $self->{'clear_screen'})
279 0 0 if ($self->{'max_cols'} and $self->{'layout'} == 1)
282 0 0 unless (defined $self->{'prompt'})
283 0 0 defined $self->{'wantarray'} ? :
285 0 0 if (defined $self->{'margin'})
287 0 0 unless (defined $self->{'tabs_prompt'})
290 0 0 unless (defined $self->{'tabs_info'})
293 0 0 if (not defined $self->{'tabs_bottom_text'})
301 0 0 if (ref $_[0] ne __PACKAGE__)
314 0 0 if @_ < 1 or @_ > 2
315 0 0 if ref $orig_list_ref ne "ARRAY"
316 0 0 if (defined $opt)
317 0 0 if ref $opt ne "HASH"
320 0 0 if defined $opt->{$key}
323 0 0 unless (@$orig_list_ref)
329 0 0 if (defined $self->{'busy_string'})
335 0 0 if ($self->{'mouse'})
338 0 0 if ($^O eq "MSWin32")
339 0 0 $opt->{'codepage_mapping'} ? :
343 0 0 if (defined $self->{'skip_items'})
347 0 0 if (exists $ENV{'TC_RESET_AUTO_UP'})
356 0 0 if (($self->{'term_width'} // 0) < 2 or ($self->{'term_height'} // 0) < 2)
361 0 0 if ($self->{'pp_count'} > 10000)
368 0 0 unless (defined $key)
375 0 0 if (($new_width // 0) < 2 or ($new_height // 0) < 2)
378 0 0 if ($new_width != $self->{'term_width'} or $new_height != $self->{'term_height'})
379 0 0 if ($self->{'ll'})
383 0 0 if ($new_width < $self->{'term_width'})
386 0 0 unless $self->{$opt}
388 0 0 unless length $row
389 0 0 if $self->{'color'}
392 0 0 if $w % ($new_width + 1)
395 0 0 if length $self->{'search_info'}
403 0 0 if ($self->{'wantarray'} and @{$self->{'marked'};})
407 0 0 if ($up)
414 0 0 if $key == -1
415 0 0 if $key == 126
416 0 0 if (exists $ENV{'TC_RESET_AUTO_UP'} and $ENV{'TC_RESET_AUTO_UP'} == 0)
417 0 0 if ($key != 10 and $key != 13)
422 0 0 if ($key == 345) { }
0 0 elsif ($key == 346) { }
423 0 0 if $self->{'first_page_row'} - $fast_page * $self->{'avail_height'} >= 0
427 0 0 if $self->{'last_page_row'} + $fast_page * $self->{'avail_height'} <= $#{$$self{"rc2idx"};}
430 0 0 if ($saved_pos and $key != 333 and $key != 2 and $key != 334 and $key != 6)
447 0 0 if ($key == 340 or $key == 106) { }
0 0 elsif ($key == 338 or $key == 107) { }
0 0 elsif ($key == 9 or $key == 9) { }
0 0 elsif ($key == 127 or $key == 8 or $key == 8) { }
0 0 elsif ($key == 339 or $key == 108) { }
0 0 elsif ($key == 337 or $key == 104) { }
0 0 elsif ($key == 333 or $key == 16) { }
0 0 elsif ($key == 334 or $key == 14) { }
0 0 elsif ($key == 336 or $key == 1) { }
0 0 elsif ($key == 335 or $key == 5) { }
0 0 elsif ($key == 113 or $key == 17) { }
0 0 elsif ($key == 3) { }
0 0 elsif ($key == 10 or $key == 13) { }
0 0 elsif ($key == 32) { }
0 0 elsif ($key == 0) { }
0 0 elsif ($key == 6 and $self->{'search'}) { }
448 0 0 if (not $self->{'rc2idx'}[$self->{'pos'}[0] + 1] && $self->{'rc2idx'}[$self->{'pos'}[0] + 1][$self->{'pos'}[1]]) { }
455 0 0 if ($self->{'pos'}[0] <= $self->{'last_page_row'}) { }
462 0 0 if $self->{'last_page_row'} > $#{$$self{"rc2idx"};}
468 0 0 if ($self->{'pos'}[0] == 0) { }
473 0 0 if ($self->{'pos'}[0] >= $self->{'first_page_row'}) { }
480 0 0 if $self->{'first_page_row'} < 0
486 0 0 if ($self->{'pos'}[0] == $#{$$self{'rc2idx'};} and $self->{'pos'}[1] == $#{$self->{'rc2idx'}[$self->{'pos'}[0]];}) { }
492 0 0 if ($self->{'pos'}[1] < $#{$self->{'rc2idx'}[$self->{'pos'}[0]];}) { }
499 0 0 if ($self->{'pos'}[0] <= $self->{'last_page_row'}) { }
507 0 0 if $self->{'last_page_row'} > $#{$$self{"rc2idx"};}
515 0 0 if ($self->{'pos'}[1] == 0 and $self->{'pos'}[0] == 0) { }
519 0 0 if ($self->{'pos'}[1] > 0) { }
526 0 0 if ($self->{'pos'}[0] >= $self->{'first_page_row'}) { }
534 0 0 if $self->{'first_page_row'} < 0
542 0 0 if ($self->{'pos'}[1] == $#{$self->{'rc2idx'}[$self->{'pos'}[0]];}) { }
552 0 0 if ($self->{'pos'}[1] == 0) { }
562 0 0 if ($self->{'first_page_row'} <= 0) { }
568 0 0 if ($saved_pos) { }
580 0 0 if ($self->{'last_page_row'} >= $#{$$self{'rc2idx'};}) { }
587 0 0 if $self->{'last_page_row'} > $#{$$self{"rc2idx"};}
588 0 0 if ($self->{'pos'}[0] + $self->{'avail_height'} > $#{$$self{'rc2idx'};} or $self->{'pos'}[1] > $#{$self->{'rc2idx'}[$self->{'pos'}[0] + $self->{'avail_height'}];}) { }
593 0 0 if ($self->{'pos'}[1] > $#{$self->{'rc2idx'}[$self->{'pos'}[0]];})
604 0 0 if ($self->{'pos'}[1] == 0 and $self->{'pos'}[0] == 0) { }
612 0 0 if $self->{'last_page_row'} > $#{$$self{"rc2idx"};}
617 0 0 if ($self->{'order'} == 1 and $self->{'idx_of_last_col_in_last_row'} < $#{$$self{'rc2idx'}[0];}) { }
618 0 0 if ($self->{'pos'}[0] == $#{$$self{'rc2idx'};} - 1 and $self->{'pos'}[1] == $#{$self->{'rc2idx'}[$self->{'pos'}[0]];}) { }
627 0 0 if ($self->{'first_page_row'} == $#{$$self{'rc2idx'};}) { }
638 0 0 if ($self->{'pos'}[0] == $#{$$self{'rc2idx'};} and $self->{'pos'}[1] == $#{$self->{'rc2idx'}[$self->{'pos'}[0]];}) { }
662 0 0 if (length $self->{'search_info'})
669 0 0 if (not defined $self->{'wantarray'}) { }
0 0 elsif ($self->{'wantarray'}) { }
674 0 0 if ($self->{'include_highlighted'} == 1) { }
0 0 elsif ($self->{'include_highlighted'} == 2) { }
679 0 0 unless (@$chosen)
683 0 0 if (defined $self->{'meta_items'} and not $self->{'marked'}[$self->{'pos'}[0]][$self->{'pos'}[1]])
685 0 0 if ($meta_item == $list_idx)
693 0 0 $opt_index ? :
696 0 0 $opt_index ? :
702 0 0 if ($self->{'wantarray'}) { }
705 0 0 if (defined $self->{'no_spacebar'} or defined $self->{'meta_items'})
706 0 0 unless $self->{'no_spacebar'}
0 0 unless $self->{'meta_items'}
707 0 0 if ($list_idx == $no_spacebar)
713 0 0 if ($locked) { }
726 0 0 if ($self->{'wantarray'}) { }
732 0 0 if ($self->{'skip_items'})
735 0 0 if (defined $self->{'no_spacebar'})
738 0 0 if (defined $self->{'meta_items'})
750 0 0 if ($self->{'ll'})
755 0 0 if (length $self->{'search_info'})
769 0 0 if ($beep)
779 0 0 if (length $self->{$opt})
783 0 0 if ($init + $r_margin > $info_w - 6 or $subseq + $r_margin > $info_w - 6)
787 0 0 if ($self->{'max_width'} and $width > $self->{'max_width'})
801 0 0 if ($#{$$self{'rc2idx'};} > $self->{'avail_height'} - 1) { }
811 0 0 if ($self->{'wantarray'} and defined $self->{'mark'})
814 0 0 if (defined $self->{'default'} and $self->{'default'} <= $#{$$self{"list"};})
817 0 0 if ($self->{'clear_screen'}) { }
824 0 0 if $self->{'margin_top'}
825 0 0 if $self->{'info_rows'}
826 0 0 if $self->{'prompt_rows'}
827 0 0 if (length $self->{'search_info'})
828 0 0 $self->{'margin_left'} ? :
831 0 0 if (length $pre_string)
835 0 0 if ($self->{'mouse'})
845 0 0 if ($self->{'margin_right'} or $self->{'col_width'} > $self->{'avail_width'})
851 0 0 if $self->{'margin_left'}
852 0 0 if $self->{'margin_right'}
853 0 0 if ($self->{'avail_width'} < 6)
857 0 0 if $self->{'col_width'} > $self->{'avail_width'}
859 0 0 if ($self->{'max_width'} and $self->{'avail_width'} > $self->{'max_width'})
865 0 0 if $self->{'margin_top'}
866 0 0 if $self->{'info_rows'}
867 0 0 if $self->{'prompt_rows'}
868 0 0 if length $self->{'search_info'}
869 0 0 if $self->{'page'}
870 0 0 if $self->{'bottom_text_rows'}
871 0 0 if $self->{'margin_bottom'}
872 0 0 if ($self->{'avail_height'} < $self->{'keep'})
875 0 0 if ($self->{'max_height'} and $self->{'avail_height'} > $self->{'max_height'})
879 0 0 if (length $self->{'search_info'})
888 0 0 if ($self->{'layout'} == 2) { }
889 0 0 if ($keep > @{$self->{'list'};})
896 0 0 if ($keep <= $self->{'avail_height'})
899 0 0 if ($self->{'margin_top'} or $self->{'margin_bottom'})
905 0 0 if ($self->{$margin_type})
908 0 0 if $self->{'avail_height'} == $keep
911 0 0 if $prev_avail_height == $self->{'avail_height'}
914 0 0 if ($keep <= $self->{'avail_height'})
917 0 0 if ($self->{'margin_right'} or $self->{'margin_left'})
920 0 0 $self->{'margin_right'} && $self->{'term_width'} > 4 ? :
921 0 0 $self->{'margin_left'} && $self->{'term_width'} > 4 ? :
924 0 0 if (length $self->{$opt})
944 0 0 if ($keep <= $self->{'avail_height'})
947 0 0 if ($self->{'info_rows'})
950 0 0 if (@{$self->{'info_rows'};} >= $keep - $self->{'avail_height'}) { }
957 0 0 if ($keep <= $self->{'avail_height'})
960 0 0 if ($self->{'bottom_text_rows'})
961 0 0 if (@{$self->{'bottom_text_rows'};} > $keep - $self->{'avail_height'}) { }
968 0 0 if ($avail_w >= $ellipsis_w)
980 0 0 if ($keep <= $self->{'avail_height'})
983 0 0 if ($self->{'prompt_rows'})
984 0 0 if (@{$self->{'prompt_rows'};} > $keep - $self->{'avail_height'}) { }
988 0 0 if ($self->{'avail_height'} + @{$self->{'prompt_rows'};} > 4) { }
998 0 0 if ($keep <= $self->{'avail_height'})
1001 0 0 if (length $self->{'search_info'})
1002 0 0 if ($self->{'avail_height'} > 2) { }
1009 0 0 if ($keep <= $self->{'avail_height'})
1012 0 0 if ($self->{'page'})
1034 0 0 if ($row_w >= $self->{'avail_width'})
1040 0 0 if (@{$self->{'list'};} % $count)
1043 0 0 if ($keep > $rows)
1053 0 0 if ($self->{'layout'} <= 1 and not $self->{'ll'} and not $self->{'max_cols'})
1057 0 0 if ($firstrow_width - $self->{'pad'} > $self->{'avail_width'})
1064 0 0 if ($all_in_first_row) { }
0 0 elsif ($self->{'col_width'} >= $self->{'avail_width'}) { }
1082 0 0 if ($self->{'current_layout'} == -1) { }
0 0 elsif ($self->{'current_layout'} == 2) { }
1095 0 0 if ($self->{'current_layout'} == 1)
1097 0 0 if @{$self->{'list'};} % $self->{'avail_height'}
1099 0 0 if ($tmc < $tmp_avail_width)
1106 0 0 if ($self->{'max_cols'} and $cols_per_row > $self->{'max_cols'})
1109 0 0 if $cols_per_row < 1
1111 0 0 if ($self->{'order'} == 1) { }
1117 0 0 if $c > $self->{'idx_of_last_col_in_last_row'}
1125 0 0 if $r == $rows - 1 and $c > $self->{'idx_of_last_col_in_last_row'}
1134 0 0 if $end > $#{$$self{"list"};}
1139 0 0 if $end > $#{$$self{"list"};}
1149 0 0 if (exists $self->{'footer_fmt'})
1153 0 0 if ($self->{'page'} == 0) { }
0 0 elsif ($self->{'page'} == 1 and $pp_total == 1) { }
1162 0 0 if (defined $self->{'footer'})
1165 0 0 if (print_columns(sprintf($self->{'footer_fmt'}, $pp_total)) > $self->{'avail_width'})
1167 0 0 if (length sprintf($self->{'footer_fmt'}, $pp_total) > $self->{'avail_width'})
1168 0 0 if $pp_total_width > $self->{'avail_width'}
1172 0 0 if ($self->{'margin_left'})
1183 0 0 if ($self->{'current_layout'} == 2)
1185 0 0 if ($list_idx > $last_list_idx)
1194 0 0 if ($self->{'order'} == 0) { }
0 0 elsif ($self->{'order'} == 1) { }
1196 0 0 if ($list_idx > $last_list_idx)
1211 0 0 if ($list_idx > $last_list_idx)
1214 0 0 if ($list_idx < $last_list_idx_in_cols_full) { }
1231 0 0 if ($self->{'current_layout'} == 2) { }
1237 0 0 if ($list_idx == $self->{'rc2idx'}[$i][$j])
1246 0 0 if $self->{'last_page_row'} > $#{$$self{"rc2idx"};}
1253 0 0 if ($self->{'order'} == 1) { }
1256 0 0 if ($self->{'marked'}[$row][$col])
1265 0 0 if ($self->{'marked'}[$row][$col])
1281 0 0 if ($self->{'footer_fmt'} or $self->{'pp_count'} > 1) { }
1289 0 0 if ($self->{'footer_fmt'})
1293 0 0 if ($self->{'bottom_text_rows'})
1297 0 0 if ($self->{'margin_bottom'})
1302 0 0 if (@post_rows)
1313 0 0 if ($#{$$self{"rc2idx"}[$row];})
1318 0 0 if ($left_margin) { }
1327 0 0 if ($self->{'margin_left'})
1337 0 0 $self->{'marked'}[$row][$col] ? :
0 0 $is_current_pos ? :
1339 0 0 if ($self->{'ll'}) { }
1340 0 0 if ($self->{'color'}) { }
1342 0 0 if ($emphasised)
1343 0 0 if ($is_current_pos and $self->{'color'} == 1) { }
1356 0 0 if ($emphasised) { }
1365 0 0 $self->{'current_layout'} == -1 ? :
1366 0 0 if ($self->{'color'}) { }
1368 0 0 if (not $self->{'orig_list'}[$idx]) { }
1369 0 0 if (not defined $self->{'orig_list'}[$idx]) { }
0 0 elsif (not length $self->{'orig_list'}[$idx]) { }
1379 0 0 if ($emphasised)
1385 0 0 if ($is_current_pos and $self->{'color'} == 1)
1391 0 0 if (@color)
1393 0 0 unless ($emphasised)
1400 0 0 if ($emphasised)
1412 0 0 if ($self->{'current_layout'} == -1) { }
1414 0 0 if ($col > 0)
1433 0 0 if ($self->{'width_elements'}[$idx] < $self->{'col_width'}) { }
0 0 elsif ($self->{'width_elements'}[$idx] > $self->{'col_width'}) { }
1434 0 0 if ($self->{'alignment'} == 0) { }
0 0 elsif ($self->{'alignment'} == 1) { }
0 0 elsif ($self->{'alignment'} == 2) { }
1447 0 0 if ($self->{'col_width'} > 6) { }
1463 0 0 if ($newrow > $self->{'i_row'}) { }
0 0 elsif ($newrow < $self->{'i_row'}) { }
1471 0 0 if ($newcol > $self->{'i_col'}) { }
0 0 elsif ($newcol < $self->{'i_col'}) { }