Branch Coverage

lib/ChordPro.pm
Criterion Covered Total %
branch 76 214 35.5


line true false branch
82 0 91 if $main::options->{'debug'}
83 0 91 if $main::options->{'trace'}
84 0 91 if $main::options->{'debug'}
90 0 91 if $opts
91 0 91 if $main::options->{'debug'}
101 91 0 if (defined $of and $of ne '') { }
0 0 elsif (-t STDOUT) { }
102 8 83 if ($of =~ /\.pdf$/iu) { }
0 83 elsif ($of =~ /\.ly$/iu) { }
0 83 elsif ($of =~ /\.(tex|ltx)$/iu) { }
6 77 elsif ($of =~ /\.cho$/iu) { }
0 77 elsif ($of =~ /\.msp$/iu) { }
9 68 elsif ($of =~ /\.(crd|txt)$/iu) { }
3 65 elsif ($of =~ /\.html?$/iu) { }
0 65 elsif ($of =~ /\.mma?$/iu) { }
0 65 elsif ($of =~ /\.(md|markdown)$/iu) { }
0 65 elsif ($of =~ /\.(debug)$/iu) { }
137 0 0 if (@ARGV > 1 or $main::options->{'dump-chords'} and not @ARGV)
143 0 0 if $f eq $ARGV[0]
145 0 0 if $main::options->{'verbose'}
155 0 91 if $@
157 0 91 if $main::options->{'verbose'} and $pkg->can("version")
169 19 72 if ($main::options->{'a2crd'})
180 0 72 if ($file =~ /(^|\s)--(?:meta|config|define)\b/u)
186 0 0 unless &Getopt::Long::GetOptionsFromArray(\@w, "config=s\@", \@cfg, "meta=s%", \%meta, "define=s%", \%defs) and @w == 1
195 0 0 if (@cfg)
204 0 72 if ($main::options->{'dump-chords'})
213 0 0 if $c =~ /^n\.?c\.?$/iu
214 0 0 if ($c =~ /^(.[b#]?)/u and $1 ne $prev)
216 0 0 if @chords
227 0 0 if @chords
234 0 0 if (@{$s->{'songs'};} == 1 and not exists $s->{'songs'}[0]{'body'}) { }
244 72 0 if ($of)
246 0 72 if ($f ne $of)
249 0 0 if $main::options->{'verbose'}
256 12 60 if $main::options->{'output'} eq "*"
261 71 8 if ($res and @$res > 0)
262 71 0 if ($of and $of ne '-') { }
265 3 68 unless $res->[-1] eq ""
271 0 0 unless $res->[-1] eq ""
290 0 0 unless defined wantarray
695 91 0 if (defined $appname) { }
703 0 91 if ($app_lc eq "a2crd")
709 91 0 if (-d "/etc")
714 0 91 if ($ENV{'XDG_CONFIG_HOME'} and -d $ENV{'XDG_CONFIG_HOME'}) { }
91 0 elsif ($ENV{'HOME'} and -d $ENV{'HOME'}) { }
721 0 91 if (-d $dir) { }
734 0 91 if (-s ".$app_lc.json") { }
864 0 91 if ($reference)
896 0 91 unless ($ok)
905 0 0 $manual == 2 ? :
911 0 91 if $ident or $clo->{'verbose'} or $help or $manual
912 0 91 if ($manual or $help)
913 0 0 if $help
914 0 0 if $manual
916 0 91 if $version
917 0 91 if $about
923 0 182 if (defined $_)
924 0 0 unless -r $_
928 182 0 if $clo->{'nodefaultconfigs'}
929 0 0 unless $configs{$config}
931 0 0 unless -r $_
936 0 91 if (defined $_)
939 0 0 unless ($c =~ m[[/.]]u)
942 0 0 unless -r $c
947 91 0 if $clo->{'nodefaultconfigs'}
948 0 0 unless $configs{$config}
950 0 0 unless -r -f $_->[0]
955 273 0 unless $clo->{$config}
962 91 0 unless defined $clo->{$_}
975 0 91 if ($defcfg or $fincfg or $deltacfg)
976 0 0 if $defcfg
978 0 0 if $fincfg or $deltacfg
983 0 91 if ($dump_chords)
990 0 91 if ($clo->{'filelist'})
995 0 0 unless /\S/u
996 0 0 if /^#/u
1001 0 0 if (@files)
1002 0 0 if ($files[0] =~ /\.pdf$/iu)
1006 0 0 if ($files[-1] =~ /\.pdf$/iu)
1011 0 0 if @files
1017 0 91 unless $main::__EMBEDDED__ or $clo->{'dump-chords'} or @ARGV
1026 0 0 if defined $exit
1031 0 0 $level > 1 ? :
1049 0 0 if defined $exit
1058 0 8 defined $Wx::VERSION ? :
1059 0 8 defined $Wx::VERSION ? :
1065 0 8 if $main::options->{'reference'}
1066 0 8 if ($VERSION =~ /_/u)
1070 8 0 if ($level eq "short")
1079 0 0 if ($App::Packager::PACKAGED)
1081 0 0 unless $p =~ /packager/iu
1087 0 0 if ($ENV{'CHORDPRO_LIB'})
1102 0 0 unless $level eq "extensive"
1113 0 0 if $loc =~ m[^(.*)/\Q$pm\E$]u
1118 0 0 if (defined $Wx::VERSION)
1153 0 150 unless $path
1154 0 150 if ($^O =~ /Win/u)
1240 0 0 if defined $exit
1250 119 42 if $cfg
1253 119 42 unless ($f =~ m[[/.]]u)
1254 0 119 if ($c =~ /^(.+):(.*)/u) { }
1261 150 11 if ($ENV{'CHORDPRO_LIB'})
1265 0 150 if $main::options->{'debug'}
1266 0 150 if -r $lib . "/" . $f
1270 0 161 if $main::options->{'debug'}
1272 161 0 defined $t ? :