Branch Coverage

blib/lib/Text/ANSITable.pm
Criterion Covered Total %
branch 136 382 35.6


line true false branch
271 0 3 if ($ENV{'ANSITABLE_STYLE_SETS'})
274 0 0 unless ref $sets eq "ARRAY"
277 0 0 if (ref $set eq 'ARRAY') { }
285 0 3 if ($ENV{'ANSITABLE_STYLE'})
290 0 0 unless $k ~~ $STYLES
298 3 0 unless ($self->{'border_style'})
309 0 3 if ($linux_vc)
314 0 3 if $linux_vc
318 3 0 unless (defined $ENV{'UTF8'})
321 3 0 unless "utf8" ~~ \@layers
324 0 3 if (defined $ENV{'ANSITABLE_BORDER_STYLE'}) { }
0 3 elsif (defined $ENV{'BORDER_STYLE'}) { }
0 3 elsif ($use_utf8) { }
0 3 elsif ($self->use_box_chars) { }
340 3 0 unless ($self->{'color_theme'})
342 0 3 if (defined $ENV{'ANSITABLE_COLOR_THEME'}) { }
0 3 elsif ($self->use_color) { }
346 0 0 if ($self->color_depth >= 16777216) { }
347 0 0 $bg eq 'ffffff' ? :
350 0 0 $bg eq 'ffffff' ? :
359 3 0 unless (defined $self->{'wide'})
360 3 0 eval {
364 3 0 if ($self->{'wide'}) { }
378 1 0 if $self->{'_columns_set'}++
379 0 0 if $row
384 1 6 unless ref $row eq "ARRAY"
386 1 5 unless $self->{'_columns_set'}++
387 0 6 if ($styles)
402 0 0 unless @{$self->{'_row_separators'};} and $self->{'_row_separators'}[-1] == $idx
408 1 1 unless ref $rows eq "ARRAY"
417 26 10 if &looks_like_number($colname)
420 9 5 if $cols->[$i] eq $colname
456 0 0 ref $_[0] eq 'HASH' ? :
460 0 0 unless $style ~~ $COLUMN_STYLES
479 0 0 if (ref $cond ne "CODE")
484 0 0 if (ref $_[0] eq 'HASH') { }
491 0 0 unless $style ~~ $COLUMN_STYLES
509 16 1 if (defined $self->{'_draw'}{'eff_column_styles'}[$col])
526 0 0 unless $res
527 0 0 if (ref $res eq "HASH")
535 0 1 if ($rss)
554 0 0 ref $_[0] eq 'HASH' ? :
558 0 0 unless $style ~~ $ROW_STYLES
577 0 0 if (ref $cond ne "CODE")
582 0 0 if (ref $_[0] eq 'HASH') { }
589 0 0 unless $style ~~ $ROW_STYLES
605 18 2 if (defined $self->{'_draw'}{'eff_row_styles'}[$row])
622 0 0 unless $res
623 0 0 if (ref $res eq "HASH")
631 0 2 if ($rss)
654 0 2 ref $_[0] eq 'HASH' ? :
658 0 2 unless $style ~~ $CELL_STYLES
677 0 0 if (ref $cond ne "CODE")
682 0 0 if (ref $_[0] eq 'HASH') { }
689 0 0 unless $style ~~ $CELL_STYLES
705 8 2 if (defined $self->{'_draw'}{'eff_cell_styles'}[$row][$col])
724 0 0 unless $res
725 0 0 if (ref $res eq "HASH")
733 2 0 if ($css)
745 0 0 unless $name =~ /\A[A-Za-z0-9_]+(?:::[A-Za-z0-9_]+)*\z/
752 0 0 ref $_[0] eq 'HASH' ? :
792 0 0 ref $self ? :
796 0 0 unless ($all_sets)
814 0 0 if ($detail) { }
825 0 1 if $self->{'_read_style_envs'}++
827 0 1 if ($ENV{'ANSITABLE_COLUMN_STYLES'})
830 0 0 unless ref $ss eq "HASH"
837 0 0 unless $k ~~ $COLUMN_STYLES
846 0 1 if ($ENV{'ANSITABLE_ROW_STYLES'})
849 0 0 unless ref $ss eq "HASH"
855 0 0 unless $k ~~ $ROW_STYLES
864 0 1 if ($ENV{'ANSITABLE_CELL_STYLES'})
867 0 0 unless ref $ss eq "HASH"
870 0 0 unless $cell =~ /^(.+),(.+)$/
879 0 0 unless $k ~~ $CELL_STYLES
897 0 1 if (ref $cf eq 'CODE') { }
0 1 elsif (ref $cf eq 'ARRAY') { }
900 0 0 &looks_like_number($_) ? :
926 0 1 unless $cols->[$i] ~~ $fcols
927 0 1 if $seen{$cols->[$i]}++
933 0 1 if not defined $header_height or $header_height < $wh->[1]
970 0 2 if (ref $rf eq 'CODE') { }
0 2 elsif ($rf) { }
971 0 0 unless &$rf($row, $i)
973 0 0 unless $i ~~ $rf
979 0 2 if $i ~~ $self->{'_row_separators'}
1010 0 1 unless $col ~~ $self->{'_draw'}{'fcols'}
1017 0 1 if $type
1018 0 1 if ($col =~ /^(can|is|has|does)_|\?$/)
1027 0 7 if ($_ ~~ \@words)
1036 0 1 unless defined $v
1037 1 0 unless (&looks_like_number($v))
1039 0 1 if ($pass)
1041 0 0 if ($col =~ /(pct|percent(?:age))\b|\%/)
1050 0 1 if ($type eq 'bool') { }
0 1 elsif ($type eq 'date') { }
0 1 elsif ($type =~ /\A(num|float|int)\z/) { }
1055 0 0 $self->{'use_utf8'} ? :
1063 0 0 if (($subtype // "") eq "pct")
1085 2 1 defined $frownum ? :
1089 3 0 if ($calcw) { }
0 0 elsif ($calch) { }
1091 0 0 if defined $setw and $setw < 0 and $wh->[0] < -$setw
1092 0 3 unless $calch
1093 0 0 if defined $seth and $seth < 0 and $wh->[1] < -$seth
1096 0 0 if defined $seth and $seth < 0 and $h < -$seth
1115 0 1 unless $cols->[$i] ~~ $fcols
1116 0 1 if $seen{$cols->[$i]}++
1119 0 1 if (@fmts) { }
1125 0 0 unless $res->[0] == 200
1149 0 2 unless $cols->[$j] ~~ $fcols
1150 0 2 if $seen{$cols->[$j]}++
1153 2 0 if (defined $fmts)
1159 0 2 unless $res->[0] == 200
1187 0 2 unless $cols->[$j] ~~ $fcols
1188 0 2 if $seen{$cols->[$j]}++
1192 0 2 if $fcol_widths->[$j] < $wh->[0]
1193 2 0 if not defined $frow_heights->[$i] or $frow_heights->[$i] < $wh->[1]
1211 0 1 unless $cols->[$i] ~~ $fcols
1212 0 1 if $seen{$cols->[$i]}++
1214 0 1 if (($self->get_eff_column_style($i, "wrap") // $self->{'column_wrap'}) // $fcol_detect->[$i]{'wrap'} and defined $fcol_setwidths->[$i] and $fcol_setwidths->[$i] > 0)
1240 1 0 if length $self->{'border_style_obj'}->get_border_char("char", "v_l")
1243 0 1 unless $cols->[$i] ~~ $fcols
1245 0 1 if ($i < @$cols - 1)
1246 0 0 if $has_vsep
1249 1 0 if length $self->{'border_style_obj'}->get_border_char("char", "v_r")
1253 1 0 if length $self->{'border_style_obj'}->get_border_char("char", "rd_t")
1259 1 0 if length $self->{'border_style_obj'}->get_border_char("char", "rv_l")
1264 0 2 if $self->_should_draw_row_separator($i)
1266 1 0 if length $self->{'border_style_obj'}->get_border_char("char", "ru_b")
1291 0 1 if defined $fcol_setwidths->[$ci] and $fcol_setwidths->[$ci] > 0
1292 1 0 if $fcol_widths->[$ci] < 30
1294 0 0 unless ($self->get_eff_column_style($ci, "wrap") // $self->{'column_wrap'}) // $fcol_detect->[$ci]{'wrap'}
1298 1 0 unless %acols
1302 0 0 unless $termw > 0
1304 0 0 unless $excess > 0
1309 0 0 unless $w > 0
1315 0 0 if $reduced >= $excess
1316 0 0 if ($fcol_widths->[$ci] > 30)
1322 0 0 unless $has_reduced
1333 0 0 unless $origw{$ci} != $fcol_widths->[$ci]
1385 0 0 if length $c
1390 18 0 unless $self->use_color
1391 0 0 if $self->{'color_theme_obj'}->get_struct->{'_no_color'}
1398 0 18 if length $c
1408 4 5 if ref $_[0] eq "HASH"
1412 15 0 if (not $self->{'use_color'}) { }
0 0 elsif ($args) { }
1445 0 3 unless @dlines
1448 0 3 if ($valign =~ /^[Bb]/o) { }
0 3 elsif ($valign =~ /^[MmCc]/o) { }
1464 0 0 $align =~ /^[Rr]/o ? :
3 0 $align =~ /^[Ll]/o ? :
1469 0 3 if ($self->{'use_color'})
1471 0 0 if length $color
1486 0 1 if (defined $self->{'header_fgcolor'}) { }
0 1 elsif (defined $self->{'cell_fgcolor'}) { }
0 1 elsif ($tmp = $self->_color_theme_item_color_to_ansi('header')) { }
0 1 elsif ($tmp = $self->_color_theme_item_color_to_ansi('cell')) { }
1501 0 1 if (defined $self->{'header_bgcolor'}) { }
0 1 elsif (defined $self->{'cell_bgcolor'}) { }
0 1 elsif (defined $self->{'_draw'}{'fcol_detect'}[$i]{'bgcolor'}) { }
0 1 elsif ($tmp = $self->_color_theme_item_color_to_ansi('header_bg', undef, 'bg')) { }
0 1 elsif ($tmp = $self->_color_theme_item_color_to_ansi('cell_bg', undef, 'bg')) { }
1554 0 2 if (defined($tmp = $self->get_eff_cell_style($oy, $x, 'fgcolor'))) { }
0 2 elsif (defined($tmp = $self->get_eff_row_style($oy, 'fgcolor'))) { }
0 2 elsif (defined($tmp = $self->get_eff_column_style($x, 'fgcolor'))) { }
0 2 elsif (defined($tmp = $self->{'cell_fgcolor'})) { }
0 2 elsif (defined($tmp = $self->{'_draw'}{'fcol_detect'}[$x]{'fgcolor'})) { }
0 2 elsif ($tmp = $self->_color_theme_item_color_to_ansi('cell', $args)) { }
1571 0 2 if (defined($tmp = $self->get_eff_cell_style($oy, $x, 'bgcolor'))) { }
0 2 elsif (defined($tmp = $self->get_eff_row_style($oy, 'bgcolor'))) { }
0 2 elsif (defined($tmp = $self->get_eff_column_style($x, 'bgcolor'))) { }
0 2 elsif (defined($tmp = $self->{'cell_bgcolor'})) { }
0 2 elsif (defined($tmp = $self->{'_draw'}{'fcol_detect'}[$x]{'bgcolor'})) { }
0 2 elsif ($tmp = $self->_color_theme_item_color_to_ansi('cell_bg', $args, 'bg')) { }
1638 0 1 unless length $self->{'border_style_obj'}->get_border_char("char", "rd_t")
1645 0 1 if $i < @$fcols - 1
1653 1 0 if ($self->{'show_header'})
1656 1 0 if (@$fcols) { }
1659 0 1 if (defined $seen{$i})
1675 0 1 unless $i == @$fcols - 1
1683 1 0 if ($self->{'show_header'} and length $self->{'border_style_obj'}->get_border_char("char", "rv_l"))
1690 0 1 unless $i == @$fcols - 1
1703 2 0 if (@$fcols) { }
1706 0 2 if (defined $seen{$i})
1722 0 2 unless $i == @$fcols - 1
1730 0 2 if ($self->_should_draw_row_separator($r))
1738 0 0 $i == @$fcols - 1 ? :
1748 0 1 unless length $self->{'border_style_obj'}->get_border_char("char", "ru_b")
1755 0 1 unless $i == @$fcols - 1