Condition Coverage

blib/lib/Ecyrillic.pm
Criterion Covered Total %
condition 98 355 27.6


and 3 conditions

line !l l&&!r l&&r condition
640 0 0 0 --$limit > 0 and $string =~ s/\A((?:$Ecyrillic::q_char)+?)$pattern//m
669 0 0 0 --$limit > 0 and length $string > 0
682 0 0 0 --$limit > 0 and length $string > 0
701 0 0 0 scalar @split >= 1 and $split[-1] eq ''
784 0 0 0 defined $replacementlist[$i] and $replacementlist[$i] ne ''
0 0 0 defined $replacementlist[-1] and $replacementlist[-1] ne ''
809 0 0 0 @char and not exists $tr{$char[0]}
826 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}
908 0 0 0 $pos < length $str and $pos <= $position
928 0 0 0 @_ and wantarray
953 0 0 0 @_ and wantarray
979 0 0 0 @_ and wantarray
1004 174 0 0 @_ and wantarray
1030 197 0 0 @_ and wantarray
1415 0 0 0 0 < $i and $i < $#char
1583 0 0 182 $min le $first and $first le $max
0 182 0 $min le $first and $first le $max and $max le $last
182 0 0 $min eq $first and $max eq $last
182 0 0 $first le $min and $max le $last
0 0 182 $min le $first and $last le $max
0 0 0 $first le $min and $min le $last
0 0 0 $first le $min and $min le $last and $last le $max
1660 810 54 8 $ignorecase and $char[$i] =~ /\A ( \[\: \^? (?:lower|upper) :\] ) \z/mosx
1661 19 5 182 0 < $i and $i < $#char
1803 178 583 182 defined $char[$i + 1] and $char[$i + 1] eq '...'
1826 0 0 182 $length == length $char[$i - 1] and $length == length $char[$i + 1]
0 0 0 length $char[$i - 1] < $length and $length < length $char[$i + 1]
2459 0 0 0 $head ne '' and ($head =~ / \G ($Ecyrillic::q_char) /gmosx)[-1] ne $pathsep
2482 0 0 0 $head ne '' and ($head =~ / \G ($Ecyrillic::q_char) /gmosx)[-1] ne $pathsep
2521 0 0 0 $cond eq 'd' and not -d "$head$leaf"
2533 0 0 0 &Ecyrillic::index($leaf, '.') == -1 and length $leaf <= 8
0 0 0 &Ecyrillic::index($leaf, '.') == -1 and length $leaf <= 8 and &Ecyrillic::index($pattern, '\\.') != -1
2603 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'}
2626 0 0 0 exists $ENV{'HOME'} and defined $ENV{'HOME'}
0 0 0 exists $ENV{'LOGDIR'} and $ENV{'LOGDIR'}
2645 0 0 0 defined $home and not -d $home
2736 0 0 0 @_ and not wantarray
3087 21580 8156 453 $Ecyrillic::slash eq 'm//' and m[\G (/) ]cgox
21580 8156 0 $Ecyrillic::slash eq 'm//' and /\G (\?) /cgox
4042 0 2 0 $2 == 5 and $3 ge '012'
4050 0 0 0 $2 == 5 and $3 >= 12
4514 1769 0 17 grep /\A \{ \z/msx, @char and grep /\A \} \z/msx, @char
5346 114232 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
114232 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
5591 3229 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
3229 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
5798 0 2 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
5869 1871 1 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
1871 1 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
5902 1266 31 28 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
1297 8 20 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ecyrillic::uc($char[$i]) ne &fc($char[$i])
296 785 138 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
5907 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 $Ecyrillic::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 $Ecyrillic::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 $Ecyrillic::q_char \z/mosx
6159 0 127 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
6179 0 0 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
6186 0 642 0 $ope =~ /\A m? \z/mosx and $delimiter eq '?'
6278 2 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
2 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ecyrillic::uc($char[$i]) ne &fc($char[$i])
2 0 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
6527 195 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
195 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
6560 172 0 3 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
172 0 3 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ecyrillic::uc($char[$i]) ne &fc($char[$i])
60 84 13 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
6565 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 $Ecyrillic::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 $Ecyrillic::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 $Ecyrillic::q_char \z/mosx
6915 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 &Ecyrillic::uc($char[$i]) ne &fc($char[$i])
13 6 0 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
7298 249 0 0 $char[$i] eq '\\L' and $char[$i + 1] eq '\\u'
249 0 0 $char[$i] eq '\\U' and $char[$i + 1] eq '\\l'
7331 236 2 7 $char[$i] eq '^' and not $modifier =~ /m/mosx
238 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx
238 0 0 $ignorecase and $char[$i] =~ /\A [\x00-\xFF] \z/mosx and &Ecyrillic::uc($char[$i]) ne &fc($char[$i])
33 168 1 $i >= 1 and $char[$i] =~ /\A [\?\+\*\{] \z/mosx
7336 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 $Ecyrillic::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 $Ecyrillic::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 $Ecyrillic::q_char \z/mosx
7652 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 &Ecyrillic::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
769 0 0 $_[4] || ''
879 0 0 $position ||= 0
1276 101 1766 {'\\D', '${Ecyrillic::eD}', '\\S', '${Ecyrillic::eS}', '\\W', '${Ecyrillic::eW}', '\\d', '[0-9]', '\\s', '\\s', '\\w', '[0-9A-Z_a-z]', '\\C', '[\\x00-\\xFF]', '\\X', 'X', '\\H', '${Ecyrillic::eH}', '\\V', '${Ecyrillic::eV}', '\\h', '[\\x09\\x20]', '\\v', '[\\x0A\\x0B\\x0C\\x0D]', '\\R', '${Ecyrillic::eR}', '\\N', '${Ecyrillic::eN}', '\\b', '${Ecyrillic::eb}', '\\B', '${Ecyrillic::eB}'}->{$char} || ''
5233 3 0 $modifier ||= ''
5741 138 514 $modifier ||= ''
6222 0 10 $modifier ||= ''
6396 28 48 $modifier ||= ''
6859 3 18 $modifier ||= ''
7060 42 55 $modifier ||= ''
7244 7 67 $modifier ||= ''
7616 0 0 $modifier ||= ''

or 3 conditions

line l !l&&r !l&&!r condition
621 0 0 0 not defined $limit or $limit <= 0
700 0 0 0 not defined $_[2] or $_[2] == 0
904 0 0 0 $position ||= length($str) - 1
1426 0 0 0 length $char[$i - 1] > length $char[$i + 1] or $char[$i - 1] gt $char[$i + 1]
1999 10 36 46 s/ \A \\x(..) - \\x(..) //mosx or s/ \A \\x((..)) //mosx
2077 10 0 10 s/ \A \\x(..) - \\x(..) //mosx or s/ \A \\x((..)) //mosx
2363 0 0 0 eval '(getpwnam($1))[7]' || my_home()
2448 0 0 0 $head eq '' or $head =~ /\A [A-Za-z]: \z/mosx
2518 0 0 0 $leaf eq '.' or $leaf eq '..'
2779 0 0 0 $offset > scalar @char or $offset < -1 * scalar(@char)
4042 0 0 2 $2 >= 6 or $2 == 5 and $3 ge '012'
4050 0 0 0 $2 >= 6 or $2 == 5 and $3 >= 12