Branch Coverage

blib/lib/Astro/App/Satpass2/Format/Template.pm
Criterion Covered Total %
branch 63 106 59.4


line true false branch
54 0 10 unless $self->{'tt'} = "Template"->new({"LOAD_TEMPLATES", ["Astro::App::Satpass2::Format::Template::Provider"->new("ABSOLUTE", $permissive, "RELATIVE", $permissive)]})
75 1 0 'HASH' eq ref $arg[0] ? :
76 0 1 unless "HASH" eq ref $fmtr
80 0 1 unless defined(my $fmtr_name = $fmtr->{'name'})
84 0 1 if $self->{'formatter_method'}{$fmtr_name}
87 0 1 if "Astro::App::Satpass2::FormatValue"->can($fmtr_name)
106 0 0 $args{'changes'} ? :
115 0 0 wantarray ? :
153 7 0 unless my $dcdr = $decoder{$method}
161 302 0 unless @arg
163 0 0 unless @arg
166 0 0 unless defined $attrib
167 0 0 unless @arg
170 0 0 unless defined $value
182 59 3 if exists $data{'data'}
184 1 61 if _is_format()
187 0 61 unless my $tplt = delete $data{'template'}
189 1 60 'SCALAR' eq ref $tplt ? :
201 0 61 if ($data{'time'}) { }
205 0 0 unless ref $data{'time'}
238 0 10 unless my $code = $item->can("fixed_width")
248 29 0 if embodies($item->body, "Astro::Coord::ECI::TLE")
266 0 61 unless eval { do { load_package("JSON"); sub { my($list) = @_; my $json = "JSON"->new->utf8->allow_blessed->convert_blessed; $json->pretty->canonical; return $json->encode($list); } } }
278 0 173 unless instance($evt, "Astro::App::Satpass2::FormatValue")
280 0 173 unless defined(my $type = $evt->$kind("width", ""))
285 156 173 unless defined(my $tplt = $self->template("${tplt}:$name"))
306 37 23 if $data{'title'}->title_gravity eq $data{'TITLE_GRAVITY_BOTTOM'}
313 3 54 if (@args) { }
323 12 195 if (@args) { }
325 2 10 unless defined $val
328 0 12 unless defined $self->template($val)
340 1 9 if (@args) { }
341 1 0 if ($self->{'permissive'} xor $args[0])
353 0 620 unless defined $name
356 3 617 if (@value) { }
358 0 3 if (not defined $value[0] or defined($tplt_text = __localize('text', '+template', 'default', $value[0])) and $value[0] eq $tplt_text) { }
373 4 613 if defined $self->{'canned_template'}{$name}
382 16 0 if (@args) { }
398 0 3 unless "ARRAY" eq ref $data
404 0 3 unless @events
419 1 342 if "Astro::App::Satpass2::Format::Template::format" eq $info[3]
428 28 0 unless defined $default
430 0 0 defined $source ? :
0 28 unless defined $report
443 218 231 if "ARRAY" eq ref $arg{'arg'}
454 275 174 unless (ref $tplt)
456 0 272 if ($tplt_text =~ /\A %% \s* include \s+ ( \w+ ) \s* \z /imsx) { }
465 1 448 unless $tt->process($tplt, \%arg, \$output)
489 0 517 if (instance($data, 'Astro::App::Satpass2::FormatValue')) { }
449 68 elsif (not defined $data or 'HASH' eq ref $data) { }
45 23 elsif ('ARRAY' eq ref $data) { }
23 0 elsif (embodies($data, 'Astro::Coord::ECI')) { }
520 8 12 $body ? :