Condition Coverage

File:blib/lib/CGI/Lingua.pm
Coverage:69.8%

line%coveragecondition
16433
ABdec
000
011
1X1
$params->{'_supported'} ||= $params->{'supported'}
171100
ABdec
0X0
100
111
defined $params->{'logger'} and &blessed($params->{'logger'})
17275
ABCdec
0XX0
10X0
1100
1111
$params->{'logger'}->can("warn") and $params->{'logger'}->can("info") and $params->{'logger'}->can("error")
184100
ABdec
000
011
1X1
$params->{'supported'} ||= $params->{'supported_languages'}
187100
ABdec
000
011
1X1
length $params->{'supported'} < 2 or length $params->{'supported'} > 5
205100
ABdec
0X0
100
111
$cache and $ENV{'REMOTE_ADDR'}
21533
ABdec
0X0
100
111
defined $rc and ref $rc eq "HASH"
23143
ABCDdec
00XX0
010X0
01100
01111
1X0X0
1X100
1X111
$rc->{'_what_language'} || $rc->{'_rlanguage'} and $info and $info->lang
24950
Adec
00
11
$params->{'debug'} || 0
100
Adec
00
11
$params->{'dont_use_ip'} || 0
270100
ABdec
0X0
100
111
$info and $l = $info->lang
29233
ABdec
0X0
100
111
defined $^V and $^V ge "v5.14.0"
409100
Adec
00
11
$self->{'_sublanguage'} || 'undef'
52850
Adec
00
11
@{$self->{'_supported'};} // ""
55567
ABdec
0X0
100
111
$self->{'_slanguage'} and $self->{'_slanguage'} ne "Unknown"
56843
ABCDdec
00XX0
01000
01011
011X1
1X000
1X011
1X1X1
!$self->{'_rlanguage'} || $self->{'_rlanguage'} eq 'Unknown' and length $http_accept_language == 2 || $http_accept_language =~ /^..-..$/
572100
Adec
00
11
$self->_code2language($http_accept_language) || 'Unknown'
603100
ABCdec
0XX0
10X0
1100
1111
$l and $http_accept_language =~ /-/ and not $http_accept_language =~ qr/$l/i
74167
ABdec
000
011
1X1
$requested_sublanguage //= $1
84033
ABdec
0X0
100
111
$variety =~ /[a-z]{2,3}/ and not defined $self->{'_sublanguage'}
87467
ABdec
000
011
1X1
$@ or not defined $language_name
882100
ABdec
0X0
100
111
$self->{'_cache'} and not defined $from_cache
919100
ABdec
0X0
100
111
not defined $country and my $c = $self->_what_language
95367
ABdec
000
011
1X1
not defined $self->{'_rlanguage'} or $self->{'_rlanguage'} eq "Unknown"
95733
ABdec
0X0
100
111
exists $self->{'_slanguage'} and $self->{'_slanguage'} ne "Unknown"
96050
ABCdec
0XX0
10X0
1100
1111
$language_name and $language_code2 and not defined $http_accept_language
9690
ABdec
0X0
100
111
$http_accept_language and $http_accept_language ne $self->{'_rlanguage'}
9760
ABdec
000
011
1X1
not defined $http_accept_language or $1 ne $self->{'_rlanguage'}
100275
ABCdec
0XX0
10X0
1100
1111
not defined $from_cache and $self->{'_cache'} and defined $self->{'_slanguage_code_alpha2'}
1169100
ABdec
0X0
100
111
$ENV{'HTTP_CF_IPCOUNTRY'} and $ENV{'HTTP_CF_IPCOUNTRY'} ne "XX"
127067
ABdec
0X0
100
111
not defined $self->{'_country'} and $ip ne $BROKEN_GEOIPFREE
1292100
ABdec
0X0
100
111
$self->{'_country'} and $self->{'_country'} eq "eu"
129767
ABdec
0X0
100
111
not $self->{'_country'} and eval {         do {         require LWP::Simple::WithCache; require JSON::Parse } }
132733
ABdec
0X0
100
111
$self->{'_country'} and not $self->{'_country'} =~ /\D/
50
ABCdec
0XX0
10X0
1100
1111
$self->{'_country'} and $self->{'_country'} ne "Unknown" and not $self->{'_country'} =~ /^[a-z]{2}$/
33
ABdec
0X0
100
111
$self->{'_country'} and $self->{'_cache'}
137675
ABCdec
0000
0011
01X1
1XX1
$@ or not defined $whois or ref $whois ne "HASH"
138375
ABCdec
0XX0
10X0
1100
1111
$self->{'_country'} eq "US" and defined $whois->{'StateProv'} and $whois->{'StateProv'} eq "PR"
147333
ABdec
000
011
1X1
$^O eq 'MSWin32' && -r 'c:/GeoIP/GeoIP.dat' || -r '/usr/local/share/GeoIP/GeoIP.dat' || -r '/usr/share/GeoIP/GeoIP.dat'
1554100
ABdec
0X0
100
111
defined $agent and $agent =~ /\((.+)\)/
1575100
Adec
00
11
$browser->country // ""
172467
ABdec
0X0
100
111
defined $self->{'_timezone'} and not $self->{'_timezone'} =~ m[^[A-Za-z][A-Za-z0-9_+\-/]{0,50}$]
1758100
Adec
00
11
$self->language_code_alpha2 // ""
1957100
Adec
00
11
$self->language_code_alpha2 // (return "other")
195833
ABdec
000
011
1X1
$PLURAL_RULES{$code} // sub {         int $_[0] == 1 ? "one" : "other"; }
201233
ABdec
000
011
1X1
$dir =~ /\.\./ or $dir =~ /\x00/
2017100
Adec
00
11
$ext //= "json"
210250
Adec
00
11
$code || 'undef'
2152100
Adec
00
11
ref $self and scalar @messages
218133
ABdec
000
011
1X1
(ref $params ? $params->{'warning'} : undef) // join("", grep(defined($_), @_))