Condition Coverage

blib/lib/Eutf2.pm
Criterion Covered Total %
condition 123 373 32.9


and 3 conditions

line !l l&&!r l&&r condition
81 0 0 0 not ref $name and &Eutf2::index($name, '::') == -1
0 0 0 not ref $name and &Eutf2::index($name, '::') == -1 and &Eutf2::index($name, q[']) == -1
1918 0 0 0 --$limit > 0 and $string =~ s/\A((?:$Eutf2::q_char)+?)$pattern//m
1947 0 0 0 --$limit > 0 and length $string > 0
1960 0 0 0 --$limit > 0 and length $string > 0
1979 0 0 0 scalar @split >= 1 and $split[-1] eq ''
2062 0 0 0 defined $replacementlist[$i] and $replacementlist[$i] ne ''
0 0 0 defined $replacementlist[-1] and $replacementlist[-1] ne ''
2087 0 0 0 @char and not exists $tr{$char[0]}
2104 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}
2186 0 0 0 $pos < length $str and $pos <= $position
2206 0 0 0 @_ and wantarray
2231 0 0 0 @_ and wantarray
2257 0 0 0 @_ and wantarray
2282 2478 0 0 @_ and wantarray
2308 2525 0 0 @_ and wantarray
2693 0 0 0 0 < $i and $i < $#char
3027 708 0 497 $min le $first and $first le $max
708 469 28 $min le $first and $first le $max and $max le $last
1177 0 0 $min eq $first and $max eq $last
469 648 60 $first le $min and $max le $last
648 0 469 $min le $first and $last le $max
0 628 20 $first le $min and $min le $last
628 0 20 $first le $min and $min le $last and $last le $max
3104 1285 606 8 $ignorecase and $char[$i] =~ /\A ( \[\: \^? (?:lower|upper) :\] ) \z/mosx
3105 20 5 497 0 < $i and $i < $#char
3247 331 1335 497 defined $char[$i + 1] and $char[$i + 1] eq '...'
3270 40 20 477 $length == length $char[$i - 1] and $length == length $char[$i + 1]
0 20 20 length $char[$i - 1] < $length and $length < length $char[$i + 1]
3918 0 0 0 $head ne '' and ($head =~ / \G ($Eutf2::q_char) /gmosx)[-1] ne $pathsep
3941 0 0 0 $head ne '' and ($head =~ / \G ($Eutf2::q_char) /gmosx)[-1] ne $pathsep
3980 0 0 0 $cond eq 'd' and not -d "$head$leaf"
3992 0 0 0 &Eutf2::index($leaf, '.') == -1 and length $leaf <= 8
0 0 0 &Eutf2::index($leaf, '.') == -1 and length $leaf <= 8 and &Eutf2::index($pattern, '\\.') != -1
4062 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'}
4085 0 0 0 exists $ENV{'HOME'} and defined $ENV{'HOME'}
0 0 0 exists $ENV{'LOGDIR'} and $ENV{'LOGDIR'}
4104 0 0 0 defined $home and not -d $home
4195 0 0 0 @_ and not wantarray
4558 35020 12779 1068 $Eutf2::slash eq 'm//' and m[\G (/) ]cgox
35020 12761 18 $Eutf2::slash eq 'm//' and /\G (\?) /cgox
5513 0 3 0 $2 == 5 and $3 ge '012'
5521 0 0 0 $2 == 5 and $3 >= 12
5856 2405 0 39 grep /\A \{ \z/msx, @char and grep /\A \} \z/msx, @char
6565 221885 6 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
221891 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
6810 3004 6 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
3010 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
7017 1 20 4 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
7088 3225 1 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
3225 1 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
7121 1997 28 54 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
2025 10 44 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Eutf2::uc($char[$i]) ne &fc($char[$i])
469 1237 188 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
7126 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 $Eutf2::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 $Eutf2::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 $Eutf2::q_char \z/mosx
7378 10 177 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
7398 0 0 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
7405 33 1278 32 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
7497 5 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
5 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Eutf2::uc($char[$i]) ne &fc($char[$i])
4 1 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
7746 346 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
346 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
7779 312 0 3 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
312 0 3 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Eutf2::uc($char[$i]) ne &fc($char[$i])
86 165 23 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
7784 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 $Eutf2::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 $Eutf2::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 $Eutf2::q_char \z/mosx
8134 19 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
19 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Eutf2::uc($char[$i]) ne &fc($char[$i])
13 6 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
8517 284 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
284 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
8550 261 3 11 $char[$i] eq '^' and not $modifier =~ /m/mosx
264 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
264 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Eutf2::uc($char[$i]) ne &fc($char[$i])
52 167 7 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
8555 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 $Eutf2::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 $Eutf2::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 $Eutf2::q_char \z/mosx
8871 0 0 0 $char[$i] eq '^' and not $modifier =~ /m/mosx
0 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
0 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Eutf2::uc($char[$i]) ne &fc($char[$i])
0 0 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx

or 2 conditions

line l !l condition
2047 0 0 $_[4] || ''
2157 0 0 $position ||= 0
2554 122 2693 {'\\D', '${Eutf2::eD}', '\\S', '${Eutf2::eS}', '\\W', '${Eutf2::eW}', '\\d', '[0-9]', '\\s', '\\s', '\\w', '[0-9A-Z_a-z]', '\\C', '[\\x00-\\xFF]', '\\X', 'X', '\\H', '${Eutf2::eH}', '\\V', '${Eutf2::eV}', '\\h', '[\\x09\\x20]', '\\v', '[\\x0A\\x0B\\x0C\\x0D]', '\\R', '${Eutf2::eR}', '\\N', '${Eutf2::eN}', '\\b', '${Eutf2::eb}', '\\B', '${Eutf2::eB}'}->{$char} || ''
6452 7 4 $modifier ||= ''
6960 503 873 $modifier ||= ''
7441 3 12 $modifier ||= ''
7615 36 74 $modifier ||= ''
8078 4 18 $modifier ||= ''
8279 51 81 $modifier ||= ''
8463 8 93 $modifier ||= ''
8835 0 0 $modifier ||= ''

or 3 conditions

line l !l&&r !l&&!r condition
86 0 0 0 $name =~ /^(([^\x80-\xFFa-z])|(\^[a-z_]+))\z/i or $global{$name}
1899 0 0 0 not defined $limit or $limit <= 0
1978 0 0 0 not defined $_[2] or $_[2] == 0
2182 0 0 0 $position ||= length($str) - 1
2704 0 0 0 length $char[$i - 1] > length $char[$i + 1] or $char[$i - 1] gt $char[$i + 1]
3443 80 0 272 s/ \A \\x(..) - \\x(..) //mosx or s/ \A \\x((..)) //mosx
3522 80 0 272 s/ \A \\x(..) - \\x(..) //mosx or s/ \A \\x((..)) //mosx
3605 604 0 0 eval q[open($_[0],'<',$_[1])] || open($_[0], "< $file\000")
3615 0 0 0 eval q[open($_[0],'>',$_[1])] || open($_[0], "> $file\000")
3625 0 0 0 eval q[open($_[0],'>>',$_[1])] || open($_[0], ">> $file\000")
3822 0 0 0 eval '(getpwnam($1))[7]' || my_home()
3907 0 0 0 $head eq '' or $head =~ /\A [A-Za-z]: \z/mosx
3977 0 0 0 $leaf eq '.' or $leaf eq '..'
4238 0 0 0 $offset > scalar @char or $offset < -1 * scalar(@char)
5513 0 0 3 $2 >= 6 or $2 == 5 and $3 ge '012'
5521 0 0 0 $2 >= 6 or $2 == 5 and $3 >= 12