Branch Coverage

File:blib/lib/HTML/D3.pm
Coverage:96.5%

line%coveragebranch
122100TFif (not defined $class) { }
100TFelsif (&blessed($class)) { }
123100TFif (scalar keys %{$params;} > 0)
194100TFunless defined $data
197100TFunless ref $data eq "ARRAY"
312100TFunless defined $data
313100TFunless ref $data eq "ARRAY"
423100TFunless ref $data eq "ARRAY"
544100TFunless ref $data eq "ARRAY"
696100TFunless defined $data
697100TFunless ref $data eq "ARRAY"
852100TFunless defined $data
853100TFunless ref $data eq "ARRAY"
1039100TFunless ref $data eq "ARRAY"
1041100TF$opts->{'animated'} ? :
1042100TF$opts->{'donut'} ? :
1045100TF$opts->{'legend'} ? :
100TFexists $opts->{'legend'} ? :
1053100TFif $val == 0
1055100TFif ref $pt->[2] eq "HASH"
1060100TFif ($sort_slices eq 'value') { }
50TFelsif ($sort_slices eq 'label') { }
1067100TFif ($max_slices >= 2 and scalar @slices > $max_slices)
108550TF$opts->{'responsive'} // $self->{'responsive'} ? :
1088100TF$donut ? :
1091100TF$animated ? :
1097100TF$animated && $show_legend ? :
1108100TFif ($animated) { }
1130100TF$donut ? :
1141100TF$show_legend ? :
1155100TF$show_legend ? :
1385100TFunless ref $data eq "ARRAY"
1398100TFunless exists $color_scheme_map{$color_scheme}
1401100TFdefined $opts->{'cell_padding'} ? :
1402100TFunless $cell_padding >= 0 and $cell_padding <= 8
1408100TF$opts->{'show_values'} ? :
1409100TF$opts->{'legend'} ? :
100TFexists $opts->{'legend'} ? :
1410100TF$opts->{'animated'} ? :
1414100TFunless ref $pt eq "ARRAY"
1416100TFunless scalar @$pt >= 3
1418100TFunless defined $pt->[2]
1419100TFunless &looks_like_number($pt->[2])
1441100TF$opts->{'responsive'} // $self->{'responsive'} ? :
1445100TF$legend ? :
1446100TF$x_label ? :
1447100TF$y_label ? :
1451100TF$animated ? :
1462100TF$legend ? :
1746100TFunless ref $data eq "ARRAY"
1749100TFunless $orientation eq "vertical" or $orientation eq "horizontal"
1754100TFunless grep {$sort_bars eq $_;} "value", "label", "none"
1758100TF$opts->{'show_values'} ? :
1759100TF$opts->{'animated'} ? :
1766100TFunless ref $pt eq "ARRAY"
1768100TFunless scalar @$pt >= 2
1770100TFunless defined $pt->[1]
1771100TFunless &looks_like_number($pt->[1])
177250TFdefined $pt->[0] ? :
100TFscalar @$pt >= 3 && ref $pt->[2] eq 'HASH' ? :
1781100TFif ($sort_bars eq 'value') { }
100TFelsif ($sort_bars eq 'label') { }
1788100TFif ($max_bars and scalar @bars > $max_bars)
179250TFif @rest
1798100TFif exists $_->{'extra'}
1814100TF$color eq 'categorical' ? :
1815100TF$is_categorical ? :
1823100TF$opts->{'responsive'} // $self->{'responsive'} ? :
1827100TF$orientation eq 'vertical' && scalar @bars > 8 ? :
1831100TFif ($orientation eq 'vertical') { }
183450TF$x_label ? :
100TF$x_label ? :
100TF$rotate_labels ? :
1840100TF$show_values ? :
1841100TF$x_label ? :
1848100TF$is_categorical ? :
1855100TF$rotate_labels ? :
1865100TFif ($show_values)
1866100TFif ($orientation eq 'vertical') { }
1893100TFif ($x_label)
1909100TFif ($animated)
1910100TFif ($orientation eq 'vertical') { }
1938100TFif ($orientation eq 'vertical') { }
2129100TFunless ref $data eq "ARRAY"
2324100TFunless ref $data eq "ARRAY"
2329100TFif ref $_->[2] eq "HASH"
233950TF$opts->{'responsive'} // $self->{'responsive'} ? :
2493100TFunless ref $data eq "ARRAY"
2498100TFif ref $_->[2] eq "HASH"
250950TF$opts->{'responsive'} // $self->{'responsive'} ? :
2536100TF$opts->{'animated'} ? :
2539100TFif ($opts->{'animated'}) { }
2773100TFunless ref $data eq "ARRAY"
2935100TFunless ref $data eq "ARRAY"
3101100TFunless ref $data eq "ARRAY"
3306100TFunless ref $data eq "ARRAY"
3560100TFunless ref $series_data eq "ARRAY"
3563100TFunless ref $s eq "HASH" and defined $s->{'name'} and ref $s->{'data'} eq "ARRAY"
3590100TF$opts->{'responsive'} // $self->{'responsive'} ? :
3594100TF$y_label ? :
3596100TF$x_label ? :
3600100TF$x_label ? :
3609100TF$y_label ? :
3619100TF$animated ? :
3856100TFunless ref $data eq "ARRAY"
3883100TFunless ref $pt eq "ARRAY"
3884100TFunless scalar @$pt >= 2
3885100TFunless &looks_like_number($pt->[0])
3886100TFunless &looks_like_number($pt->[1])
3888100TFif ref $pt->[2] eq "HASH"
3889100TFif (ref $pt->[3] eq "HASH")
3890100TFif defined $pt->[3]{'series'}
3891100TFif defined $pt->[3]{'size'} and &looks_like_number($pt->[3]{'size'})
3901100TFif (defined $p->{'series'} and not $seen_series{$p->{'series'}}++)
3904100TFif (defined $p->{'size'})
3905100TFif not defined $size_min or $p->{'size'} < $size_min
390650TFif not defined $size_max or $p->{'size'} > $size_max
392150TF$color eq 'categorical' ? :
3922100TF$is_categorical || $has_series ? :
3932100TF$has_series ? :
3934100TF$opts->{'responsive'} // $self->{'responsive'} ? :
3937100TF$x_label ? :
3938100TF$y_label ? :
3945100TFif ($has_series) { }
50TFelsif ($is_categorical) { }
3959100TFif ($has_size and defined $size_min)
3967100TF$has_series ? :
3971100TF$animated ? :
3984100TF$x_label ? :
3993100TF$y_label ? :
4004100TF$has_series ? :
4016100TF$has_series ? :
4019100TF$has_size ? :
4199100TFunless ref $data eq "ARRAY"
4200100TFunless @$data
4201100TFunless ref $data->[0] eq "ARRAY"
4203100TFexists $opts->{'sortable'} ? :
4228100TFunless ref $row eq "ARRAY"
4238100TF$caption ? :
4242100TF$sortable ? :
4243100TF$sortable ? :
4255100TF$sortable ? :
4406100TFunless ref $data eq "ARRAY"
4416100TFunless $orient eq "v" or $orient eq "h"
4418100TFif defined $sort_by and $sort_by ne "value" and $sort_by ne "label"
4423100TFunless ref $row eq "HASH"
4424100TFunless &looks_like_number(scalar($row->{$val_col} // "x"))
4426100TFunless $cats_seen{$cat}++
4434100TFif (defined $sort_by and $sort_by eq 'label') { }
100TFelsif (defined $sort_by and $sort_by eq 'value') { }
4468100TF$opts->{'responsive'} // $self->{'responsive'} ? :
4471100TF$orient eq 'v' ? :
4474100TF$x_label ? :
100TF$is_v ? :
4475100TF$is_v ? :
4480100TF$x_label ? :
4490100TFif ($is_v) { }
4695100TFunless ref $data eq "ARRAY"
4707100TFunless ref $row eq "HASH"
4708100TFunless &looks_like_number(scalar($row->{$bar_col} // "x"))
4709100TFunless &looks_like_number(scalar($row->{$line_col} // "x"))
471350TFdefined $row->{$x_col} ? :
4736100TF$opts->{'responsive'} // $self->{'responsive'} ? :
4945100TFunless ref $data eq "ARRAY" or ref $data eq "HASH"
4950100TF$opts->{'label'} ? :
100TFexists $opts->{'label'} ? :
4960100TFif (ref $data eq 'ARRAY') { }
4962100TFunless ref $row eq "HASH"
4963100TFunless exists $row->{'path'}
4965100TFunless &looks_like_number(scalar($row->{'value'} // "x"))
5007100TF$opts->{'responsive'} // $self->{'responsive'} ? :
5010100TF$label ? :
5200100TFunless @$bins
5204100TFunless ref $b eq "HASH"
5207100TFunless defined $b->{'count'} and &looks_like_number($b->{'count'})
5208100TFunless $b->{'count'} + 0 >= 0
5210100TFdefined $b->{'lo'} && &looks_like_number($b->{'lo'}) ? :
5211100TFdefined $b->{'hi'} && &looks_like_number($b->{'hi'}) ? :
5214100TFunless (defined $label and length $label)
5215100TFunless defined $lo and defined $hi
5231100TF$opts->{'responsive'} // $self->{'responsive'} ? :
5234100TF$x_label ? :
5246100TFif (defined $opts->{'color'}) { }
100TFelsif (defined $opts->{'scheme'}) { }
5253100TF$x_label ? :
5333100TFunless ref $data eq "ARRAY"
5336100TFif ($opts->{'binned'})
5340100TFexists $opts->{'bins'} ? :
5341100TFif (defined $bins_opt)
5342100TFunless &looks_like_number($bins_opt) and $bins_opt == int $bins_opt and $bins_opt >= 1
5348100TFunless &looks_like_number(scalar($v // "x"))
5372100TF$opts->{'responsive'} // $self->{'responsive'} ? :
5377100TF$x_label ? :
5382100TFdefined $bins_opt ? :
5386100TF$x_label ? :
548350TFdefined $override ? :
5484100TF$responsive ? :
54980TF$opts->{'responsive'} // $self->{'responsive'} ? :