Condition Coverage

blib/lib/Ehp15.pm
Criterion Covered Total %
condition 162 496 32.6


and 3 conditions

line !l l&&!r l&&r condition
699 0 0 0 --$limit > 0 and $string =~ s/\A((?:$Ehp15::q_char)+?)$pattern//m
728 0 0 0 --$limit > 0 and length $string > 0
741 0 0 0 --$limit > 0 and length $string > 0
760 0 0 0 scalar @split >= 1 and $split[-1] eq ''
843 0 0 0 defined $replacementlist[$i] and $replacementlist[$i] ne ''
0 0 0 defined $replacementlist[-1] and $replacementlist[-1] ne ''
868 0 0 0 @char and not exists $tr{$char[0]}
885 0 0 0 @char and exists $tr{$char[0]}
0 0 0 @char and exists $tr{$char[0]} and $tr{$char[0]} eq $tr{$char}
967 0 0 0 $pos < length $str and $pos <= $position
987 0 0 0 @_ and wantarray
1012 0 0 0 @_ and wantarray
1038 0 0 0 @_ and wantarray
1063 3588 0 0 @_ and wantarray
1089 3891 0 0 @_ and wantarray
1120 0 0 0 $last_s_matched and $_[0] =~ /\A (?>[1-9][0-9]*) \z/mosx
1271 0 0 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
1516 0 0 0 0 < $i and $i < $#char
1850 1074 0 608 $min le $first and $first le $max
1074 580 28 $min le $first and $first le $max and $max le $last
1654 0 0 $min eq $first and $max eq $last
580 1034 40 $first le $min and $max le $last
1034 0 580 $min le $first and $last le $max
0 994 40 $first le $min and $min le $last
994 0 40 $first le $min and $min le $last and $last le $max
1927 1273 606 8 $ignorecase and $char[$i] =~ /\A ( \[\: \^? (?:lower|upper) :\] ) \z/mosx
1928 20 5 497 0 < $i and $i < $#char
2070 319 1335 497 defined $char[$i + 1] and $char[$i + 1] eq '...'
2093 20 20 477 $length == length $char[$i - 1] and $length == length $char[$i + 1]
0 20 0 length $char[$i - 1] < $length and $length < length $char[$i + 1]
2592 0 0 0 @_ and not wantarray
2641 0 0 0 @_ and not wantarray
2674 0 0 0 @_ and not wantarray
2709 0 0 0 @_ and not wantarray
2742 0 0 0 @_ and not wantarray
2775 0 0 0 @_ and not wantarray
2808 0 0 0 @_ and not wantarray
2843 0 0 0 @_ and not wantarray
2876 768 0 0 @_ and not wantarray
2920 0 0 0 @_ and not wantarray
2953 0 0 0 @_ and not wantarray
2986 0 0 0 @_ and not wantarray
3019 0 0 0 @_ and not wantarray
3044 0 0 0 @_ and not wantarray
3077 0 0 0 @_ and not wantarray
3110 0 0 0 @_ and not wantarray
3143 0 0 0 @_ and not wantarray
3176 0 0 0 @_ and not wantarray
3209 0 0 0 @_ and not wantarray
3242 0 0 0 @_ and not wantarray
3275 0 0 0 @_ and not wantarray
3301 0 0 0 @_ and not wantarray
3385 0 0 0 @_ and not wantarray
3451 0 0 0 @_ and not wantarray
3485 0 0 0 @_ and not wantarray
3519 0 0 0 @_ and not wantarray
4405 0 0 0 $head ne '' and ($head =~ / \G ($Ehp15::q_char) /gmosx)[-1] ne $pathsep
4428 0 0 0 $head ne '' and ($head =~ / \G ($Ehp15::q_char) /gmosx)[-1] ne $pathsep
4467 0 0 0 $cond eq 'd' and not &d("$head$leaf")
4479 0 0 0 &Ehp15::index($leaf, '.') == -1 and length $leaf <= 8
0 0 0 &Ehp15::index($leaf, '.') == -1 and length $leaf <= 8 and &Ehp15::index($pattern, '\\.') != -1
4549 0 0 0 exists $ENV{'HOME'} and $ENV{'HOME'}
0 0 0 exists $ENV{'USERPROFILE'} and $ENV{'USERPROFILE'}
0 0 0 exists $ENV{'HOMEDRIVE'} and exists $ENV{'HOMEPATH'}
0 0 0 exists $ENV{'HOMEDRIVE'} and exists $ENV{'HOMEPATH'} and $ENV{'HOMEDRIVE'}
0 0 0 exists $ENV{'HOMEDRIVE'} and exists $ENV{'HOMEPATH'} and $ENV{'HOMEDRIVE'} and $ENV{'HOMEPATH'}
4572 0 0 0 exists $ENV{'HOME'} and defined $ENV{'HOME'}
0 0 0 exists $ENV{'LOGDIR'} and $ENV{'LOGDIR'}
4591 0 0 0 defined $home and not &d($home)
4765 0 0 0 defined $ENV{'OS'} and $ENV{'OS'} eq 'Windows_NT'
4809 0 0 0 $] =~ /^(?:5\.006|5\.008000)/mosx and $^O eq 'MSWin32'
4991 0 0 0 defined $ENV{'OS'} and $ENV{'OS'} eq 'Windows_NT'
5059 0 0 768 @_ >= 1 and $_[0] ne ''
5461 0 0 0 defined $1 and substr($&, -length($1), length $1) eq $1
5563 0 0 0 @_ and not wantarray
5929 54221 21462 1231 $Ehp15::slash eq 'm//' and m[\G (/) ]cgox
54221 21370 92 $Ehp15::slash eq 'm//' and /\G (\?) /cgox
7050 0 3 0 $2 == 5 and $3 ge '012'
7058 0 0 0 $2 == 5 and $3 >= 12
7574 3018 0 79 grep /\A \{ \z/msx, @char and grep /\A \} \z/msx, @char
8509 3678 17128 412 defined $char[$i + 1] and $char[$i + 1] eq '\\'
20806 390 22 defined $char[$i + 1] and $char[$i + 1] eq '\\' and $char[$i] =~ /\A ([\x80-\xFF].*) (\\) \z/msx
8516 289 3474 204 defined $char[-1] and $char[-1] =~ /\A ([\x80-\xFF].*) (\\) \z/msx
8555 307980 6 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
307986 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
8807 3219 6 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
3225 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
9019 44 106 90 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
9090 5421 1 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
5421 1 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
9123 3810 100 300 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
3910 62 238 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ehp15::uc($char[$i]) ne &fc($char[$i])
682 2982 188 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
9133 6 0 0 $i + 3 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 3]) == 3
6 0 0 $i + 3 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 3]) == 3 and eval(sprintf '"%s%s%s%s"', @char[$i .. $i + 3]) =~ /\A $Ehp15::q_char \z/mosx
6 0 0 $i + 2 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 2]) == 2
6 0 0 $i + 2 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 2]) == 2 and eval(sprintf '"%s%s%s"', @char[$i .. $i + 2]) =~ /\A $Ehp15::q_char \z/mosx
4 2 0 $i + 1 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, $char[$i + 1]) == 1
6 0 0 $i + 1 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, $char[$i + 1]) == 1 and eval(sprintf '"%s%s"', @char[$i .. $i + 1]) =~ /\A $Ehp15::q_char \z/mosx
9385 10 177 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
9405 0 0 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
9412 64 1429 94 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
9504 37 16 24 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
53 8 16 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ehp15::uc($char[$i]) ne &fc($char[$i])
52 9 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
9759 397 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
397 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
9792 320 8 15 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
328 4 11 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ehp15::uc($char[$i]) ne &fc($char[$i])
108 155 23 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
9802 0 0 0 $i + 3 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 3]) == 3
0 0 0 $i + 3 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 3]) == 3 and eval(sprintf '"%s%s%s%s"', @char[$i .. $i + 3]) =~ /\A $Ehp15::q_char \z/mosx
0 0 0 $i + 2 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 2]) == 2
0 0 0 $i + 2 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 2]) == 2 and eval(sprintf '"%s%s%s"', @char[$i .. $i + 2]) =~ /\A $Ehp15::q_char \z/mosx
0 0 0 $i + 1 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, $char[$i + 1]) == 1
0 0 0 $i + 1 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, $char[$i + 1]) == 1 and eval(sprintf '"%s%s"', @char[$i .. $i + 1]) =~ /\A $Ehp15::q_char \z/mosx
10162 36 8 12 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
44 4 8 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ehp15::uc($char[$i]) ne &fc($char[$i])
38 10 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
10293 6 3 0 defined $char[$i + 1] and $char[$i + 1] eq '\\'
9 0 0 defined $char[$i + 1] and $char[$i + 1] eq '\\' and $char[$i] =~ /\A ([\x80-\xFF].*) (\\) \z/msx
10313 85 6 0 defined $char[-1] and $char[-1] =~ /\A ([\x80-\xFF].*) (\\) \z/msx
10651 372 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
372 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
10684 349 3 11 $char[$i] eq '^' and not $modifier =~ /m/mosx
310 24 18 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
334 0 18 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ehp15::uc($char[$i]) ne &fc($char[$i])
122 167 7 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
10694 0 0 0 $i + 3 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 3]) == 3
0 0 0 $i + 3 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 3]) == 3 and eval(sprintf '"%s%s%s%s"', @char[$i .. $i + 3]) =~ /\A $Ehp15::q_char \z/mosx
0 0 0 $i + 2 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 2]) == 2
0 0 0 $i + 2 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, @char[$i + 1 .. $i + 2]) == 2 and eval(sprintf '"%s%s%s"', @char[$i .. $i + 2]) =~ /\A $Ehp15::q_char \z/mosx
0 0 0 $i + 1 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, $char[$i + 1]) == 1
0 0 0 $i + 1 <= $#char and grep(/\A (?: \\ [0-7]{2,3} | \\x [0-9A-Fa-f]{1,2}) \z/mosx, $char[$i + 1]) == 1 and eval(sprintf '"%s%s"', @char[$i .. $i + 1]) =~ /\A $Ehp15::q_char \z/mosx
11010 56 0 0 $char[$i] eq '^' and not $modifier =~ /m/mosx
28 16 12 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
44 0 12 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ehp15::uc($char[$i]) ne &fc($char[$i])
44 0 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx

or 2 conditions

line l !l condition
828 0 0 $_[4] || ''
938 0 2304 $position ||= 0
1377 122 5105 {'\\D', '${Ehp15::eD}', '\\S', '${Ehp15::eS}', '\\W', '${Ehp15::eW}', '\\d', '[0-9]', '\\s', '\\s', '\\w', '[0-9A-Z_a-z]', '\\C', '[\\x00-\\xFF]', '\\X', 'X', '\\H', '${Ehp15::eH}', '\\V', '${Ehp15::eV}', '\\h', '[\\x09\\x20]', '\\v', '[\\x0A\\x0B\\x0C\\x0D]', '\\R', '${Ehp15::eR}', '\\N', '${Ehp15::eN}', '\\b', '${Ehp15::eb}', '\\B', '${Ehp15::eB}'}->{$char} || ''
8426 7 4 $modifier ||= ''
8962 875 960 $modifier ||= ''
9448 121 42 $modifier ||= ''
9627 101 93 $modifier ||= ''
10106 63 33 $modifier ||= ''
10325 175 115 $modifier ||= ''
10597 134 139 $modifier ||= ''
10974 84 28 $modifier ||= ''

or 3 conditions

line l !l&&r !l&&!r condition
680 0 0 0 not defined $limit or $limit <= 0
759 0 0 0 not defined $_[2] or $_[2] == 0
963 0 0 0 $position ||= length($str) - 1
1527 0 0 0 length $char[$i - 1] > length $char[$i + 1] or $char[$i - 1] gt $char[$i + 1]
2271 80 5 277 s/ \A \\x(..) - \\x(..) //mosx or s/ \A \\x((..)) //mosx
2350 80 5 277 s/ \A \\x(..) - \\x(..) //mosx or s/ \A \\x((..)) //mosx
3349 0 0 0 -d $_ or -d "$_/."
3415 0 0 0 -d $_ or -d "$_/."
4100 0 0 0 -d $_ or -d "$_/."
4136 0 0 0 -d $_ or -d "$_/."
4309 0 0 0 eval '(getpwnam($1))[7]' || my_home()
4394 0 0 0 $head eq '' or $head =~ /\A [A-Za-z]: \z/mosx
4464 0 0 0 $leaf eq '.' or $leaf eq '..'
4968 0 0 0 $char eq '\\' or $char eq '/'
4977 0 0 0 $subdir[-1] eq '\\' or $subdir[-1] eq '/'
5097 0 0 0 $e_mtime < $mtime or $mtime < $module_mtime
5329 0 0 0 $e_mtime < $mtime or $mtime < $module_mtime
5606 0 0 0 $offset > scalar @char or $offset < -1 * scalar(@char)
7050 0 0 3 $2 >= 6 or $2 == 5 and $3 ge '012'
7058 0 0 0 $2 >= 6 or $2 == 5 and $3 >= 12