Branch Coverage

blib/lib/Perinci/CmdLine/Inline.pm
Criterion Covered Total %
branch 223 342 65.2


line true false branch
43 0 776 unless $cd->{'gen_args'}{'pack_deps'}
44 0 776 if $cd->{'module_srcs'}{$mod}
46 0 776 if "Module::CoreList::More"->is_still_core($mod)
47 0 776 unless my $path = module_path("module", $mod)
49 0 776 unless open my $fh, "<", $path
58 0 64 unless $url =~ m[\A(?:pl:)?((?:/[^/]+)+)/([^/]*)\z]
66 55 9 length $short_func_name ? :
67 9 55 unless length $short_func_name
68 0 64 unless $meta
69 55 9 if (length $short_func_name)
70 0 55 unless defined &{"${mod}::$short_func_name";}
85 44 4 unless $cd->{'gen_args'}{'read_env'}
115 0 1 if defined $cd->{'gen_args'}{'code_before_enable_logging'}
122 0 1 if defined $cd->{'gen_args'}{'code_add_extra_log_outputs'}
130 0 1 if defined $cd->{'gen_args'}{'code_after_enable_logging'}
140 36 12 unless $cd->{'gen_args'}{'read_config'}
183 0 12 if $cd->{'gen_args'}{'log'}
229 5 48 $i ? :
238 16 67 unless defined $arg_spec->{'pos'}
243 5 62 if ($arg_spec->{'slurpy'} // $arg_spec->{'greedy'}) { }
267 0 90 $csa eq 'stdin_line' ? :
0 90 $csa eq 'stdin_line' ? :
0 0 unless ($csa eq "stdin_line" ? 1 : 2) <=> ($csa eq "stdin_line" ? 1 : 2)
272 4 79 if $arg_spec->{'stream'} and $sch->[0] eq "array"
274 79 4 unless $cs
275 0 4 if ($cs eq 'stdin_line') { }
0 4 elsif ($cs eq 'stdin_or_file') { }
0 4 elsif ($cs eq 'file') { }
0 4 elsif ($cs eq 'stdin') { }
4 0 elsif ($cs eq 'stdin_or_files') { }
0 0 elsif ($cs eq 'stdin_or_args') { }
279 0 0 if defined $stdin_seen
287 0 0 if ($arg_spec->{'stream'}) { }
0 0 elsif ($type eq 'array') { }
298 0 0 $arg_spec->{'req'} ? :
301 0 0 if ($arg_spec->{'stream'}) { }
0 0 elsif ($type eq 'array') { }
311 0 0 if defined $stdin_seen
315 0 0 if ($arg_spec->{'stream'}) { }
0 0 elsif ($type eq 'array') { }
325 0 4 if defined $stdin_seen
330 4 0 if ($arg_spec->{'stream'}) { }
0 0 elsif ($type eq 'array') { }
340 0 0 if defined $stdin_seen
345 0 0 if ($arg_spec->{'stream'}) { }
0 0 elsif ($type eq 'array') { }
359 49 4 unless ($req_gen_iter)
377 4 79 if $arg_spec->{'stream'}
381 0 79 if (defined $arg_spec->{'default'})
385 79 0 if ($arg_schema and $cd->{'gen_args'}{'validate_args'})
399 0 79 unless $dsah_cd->{'v'} == 2
403 89 96 unless $mod_rec->{'phase'} eq "runtime"
404 50 46 if grep {$_->{'name'} eq $mod_rec->{'name'} unless $mod_rec->{'use_statement'} and $_->{'use_statement'} and $_->{'use_statement'} eq $mod_rec->{'use_statement'};} @modules_for_all_args
405 32 50 unless $mod_rec->{'use_statement'} and $_->{'use_statement'} and $_->{'use_statement'} eq $mod_rec->{'use_statement'}
407 12 34 if ($mod_rec->{'name'} =~ /\A(Scalar::Util::Numeric::PP)\z/)
413 0 34 unless $mod_is_core and not $cd->{'module_srcs'}{$mod_rec->{'name'}} and not $cd->{'gen_args'}{'allow_prereq'} && grep({$_ eq $mod_rec->{'name'};} @{$$cd{'gen_args'}{'allow_prereq'};})
416 0 46 if exists $cd->{'req_modules'}{$mod_rec->{'name'}}
428 29 24 if ($has_validation)
440 14 69 if ($arg_spec->{'req'})
443 18 65 if ($arg_spec->{'schema'}[1]{'req'})
463 48 360 if ($co eq 'help') { }
48 312 elsif ($co eq 'version') { }
1 311 elsif ($co eq 'log_level') { }
1 310 elsif ($co eq 'trace') { }
1 309 elsif ($co eq 'debug') { }
1 308 elsif ($co eq 'verbose') { }
1 307 elsif ($co eq 'quiet') { }
9 298 elsif ($co eq 'subcommands') { }
18 280 elsif ($co eq 'cmd') { }
48 232 elsif ($co eq 'format') { }
48 184 elsif ($co eq 'json') { }
48 136 elsif ($co eq 'naked_res') { }
48 88 elsif ($co eq 'no_naked_res') { }
12 76 elsif ($co eq 'no_config') { }
12 64 elsif ($co eq 'config_path') { }
12 52 elsif ($co eq 'config_profile') { }
4 48 elsif ($co eq 'no_env') { }
48 0 elsif ($co eq 'page_result') { }
464 9 39 if ($has_subcommands) { }
481 0 39 unless $res->[0] == 200
489 48 0 if $mod
491 0 48 if ($cd->{'gen_args'}{'script_version_from_main_version'}) { }
494 0 48 defined $cd->{'gen_args'}{'script_version'} ? :
501 48 0 ${'Perinci::CmdLine::Inline::DATE';} ? :
564 1 47 if $cd->{'gen_args'}{'log'}
566 9 39 if ($cd->{'gen_args'}{'subcommands'}) { }
577 0 14 if $sc_name eq ""
584 0 14 unless $res->[0] == 200
596 0 9 unless $res->[0] == 200
608 9 9 if ($stage == 1) { }
621 40 174 unless $co
622 87 87 if ($stage == 1) { }
626 9 78 if ($co eq 'cmd') { }
634 9 9 if ($stage == 1) { }
640 9 9 if ($stage == 2)
652 132 25 unless defined $argname
656 0 25 if ($specmeta->{'is_alias'} and $specmeta->{'is_code'}) { }
658 0 0 if ($specmeta->{'is_code'}) { }
665 0 25 if (($specmeta->{'parsed'}{'type'} // '') =~ /\@/) { }
10 15 elsif ($specmeta->{'is_json'}) { }
0 15 elsif ($specmeta->{'is_neg'}) { }
694 3 6 if defined $cd->{'gen_args'}{'default_subcommand'}
699 0 9 if $cd->{'gen_args'}{'with_debug'}
712 138 762 if $stage == 1 and not $co
714 624 138 if ($co) { }
715 312 312 if ($stage == 1) { }
723 0 138 if ($stage == 1) { }
0 138 elsif ($specmeta->{'is_alias'} and $specmeta->{'is_code'}) { }
727 0 0 if ($specmeta->{'is_code'}) { }
734 8 130 if (($specmeta->{'parsed'}{'type'} // '') =~ /\@/) { }
59 71 elsif ($specmeta->{'is_json'}) { }
10 61 elsif ($specmeta->{'is_neg'}) { }
757 0 39 if $cd->{'gen_args'}{'with_debug'}
1086 9 41 if ($scs)
1090 0 14 if $res->[0] != 200
1101 50 0 if ($url)
1103 0 50 if $res->[0] != 200
1108 41 9 unless ($scs)
1112 41 9 if (length(my $sfn = $res->[3]{'func.short_func_name'}))
1121 0 0 unless ($url or $scs)
1137 0 50 if $args{'meta_is_normalized'}
1154 1 48 if $env =~ /\A\d/
1188 1 49 if ($args{'log'})
1212 50 0 unless ($args{'skip_format'})
1227 9 41 if ($args{'subcommands'})
1231 12 38 if ($args{'read_config'})
1236 4 46 if ($args{'read_env'})
1250 50 0 unless $shebang_line =~ /\A#!/
1251 50 0 unless $shebang_line =~ /\R\z/
1298 0 50 if ($args{'with_debug'})
1317 0 50 unless $args{'use_cleanser'}
1329 50 50 if "Module::CoreList"->is_core($mod)
1342 2 53 unless ($args_as =~ /\A(hashref|hash)\z/)
1353 0 53 unless $ggl_res->[0] == 200
1377 48 0 if $cd->{'gen_args'}{'pack_deps'}
1379 0 48 if $cd->{'gen_args'}{'with_debug'}
1391 1 47 if $cd->{'gen_args'}{'log'}
1394 0 48 if $args{'pass_cmdline_object'}
1400 5 48 $i ? :
1401 2 51 if $meta->{'result'}{'stream'}
1402 0 53 if $meta->{'cmdline.skip_format'}
1404 6 47 if Data::Sah::Util::Type::is_simple($meta->{'result'}{'schema'} // "")
1405 53 0 if $cd->{'sc_mods'}{$sc_name}
1406 1 52 $cd->{'args_as'}{$sc_name} eq 'hashref' ? :
1408 1 52 if ($meta->{'result_naked'})
1419 1 47 if $cd->{'gen_args'}{'log'}
1433 0 48 $args{'skip_format'} ? :
1436 48 0 if $args{'pack_deps'} and $args{'use_cleanser'}
1438 48 0 if $args{'use_cleanser'}
1442 0 48 $args{'use_utf8'} ? :
1462 0 48 if ($args{'skip_format'})
1468 0 48 if ($args{'pass_cmdline_object'})
1481 48 0 if ($args{'pack_deps'}) { }
1487 0 48 unless $dp_res->[0] == 200
1502 48 0 if ($args{'pod'} // 1)
1520 0 48 unless $res->[0] == 200
1556 38 10 if ($abstract) { }
1589 145 144 defined $cd->{'vars'}{$_} ? :
1597 48 52 if ($cd->{'sub_src_core_deps'}{$sub})
1603 0 100 ref $cd->{'sub_srcs'}{$sub} eq 'ARRAY' ? :
1621 48 0 keys %{$$cd{'mods'};} ? :
48 0 keys %{$$cd{'vars'};} ? :
1 47 $args{'log'} ? :
48 0 defined $pod ? :
1628 48 0 if (not defined $args{'output_file'} or $args{'output_file'} eq '-') { }
1631 0 0 if (-f $args{'output_file'})
1634 0 0 unless $args{'overwrite'}
1637 0 0 unless open $fh, ">", $args{'output_file'}
1640 48 0 if ($output_is_stdout) { }
1646 0 0 unless close $fh
1647 0 0 unless (chmod 0755, $args{'output_file'})