Condition Coverage

blib/lib/Test/ModuleVersion.pm
Criterion Covered Total %
condition 11 425 2.5


and 2 conditions

line l !l condition
2480 0 0 $p++ and next

and 3 conditions

line !l l&&!r l&&r condition
97 1 2 7 defined $default and ref $default
1 0 2 defined $default and not ref $default
181 0 0 0 not exists $$self{'proxy'} and my $http_proxy = $ENV{'http_proxy'}
197 0 0 0 @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 3 and ref $args eq 'HASH'
210 0 0 0 @_ == 4 and ref $args eq 'HASH'
233 0 0 0 @_ == 4 and ref $args eq 'HASH'
235 0 0 0 -e $file and my $mtime = (stat $file)[9]
250 0 0 0 $lm and my $mtime = $self->_parse_http_date($lm)
264 0 0 0 @_ == 4 and ref $args eq 'HASH'
272 0 0 0 $@ and $idempotent{$method}
0 0 0 $@ and $idempotent{$method} and $@ =~ /^(?:Socket closed|Unexpected end)/
294 0 0 0 @_ == 2 and ref $data
419 0 0 0 $data_cb and $$response{'status'} =~ /^2/
438 0 0 0 $status eq '303' || $status =~ /^30[127]/ && $method =~ /^GET|HEAD$/ and $$headers{'location'}
0 0 0 $status eq '303' || $status =~ /^30[127]/ && $method =~ /^GET|HEAD$/ and $$headers{'location'} and ++$$args{'redirects'} <= $$self{'max_redirect'}
463 0 0 0 $host =~ s/:([0-9]*)\z// && length $1
665 0 0 0 $len and not $allow_partial
755 0 0 0 @_ == 2 and ref $_[1] eq 'HASH'
833 0 0 0 defined $data and length $data
880 0 0 0 defined $data and length $data
935 0 0 0 defined $timeout and $timeout >= 0
939 0 0 0 defined $fd and $fd >= 0
1298 0 0 0 $convert_blessed and $obj->can('TO_JSON')
1300 0 0 0 defined $result and ref $result
1312 0 0 0 $bignum and _is_bignum($obj)
1313 0 0 0 $allow_blessed and $as_nonblessed
1383 0 0 0 $flags & 12288 and not $flags & 16384
1388 0 0 0 &blessed($value) and $value->isa('Test::ModuleVersion::JSON::PP::Boolean')
1399 0 0 0 $type eq 'SCALAR' and defined $$value
1420 0 0 0 $$self{'fallback'} and ref $$self{'fallback'} eq 'CODE'
1652 0 0 0 $octets[0] && $octets[1]
0 0 0 !$octets[0] && $octets[1]
1665 0 0 0 not $result and $opt & 268435456
1701 0 0 0 $singlequote and $ch eq q[']
1715 0 0 0 $singlequote and $ch eq q[']
1823 0 0 0 defined $ch and $ch eq '/'
0 0 0 defined $ch and $ch eq '*'
1824 0 0 0 defined next_chr() and $ch ne "\n"
0 0 0 defined next_chr() and $ch ne "\n" and $ch ne "\r"
1831 0 0 0 defined next_chr() and $ch eq '/'
1852 0 0 0 $relaxed and $ch eq '#'
1875 0 0 0 defined $ch and $ch eq ']'
1903 0 0 0 $relaxed and $ch eq ']'
1925 0 0 0 defined $ch and $ch eq '}'
1935 0 0 0 $allow_barekey && $ch ne '"' && $ch ne q[']
1965 0 0 0 $relaxed and $ch eq '}'
2039 0 0 0 defined $n and length $n > 1
2044 0 0 0 defined $n and length $n
2045 0 0 0 not $hex and length $n == 1
2057 0 0 0 defined $ch and $ch =~ /\d/
2062 0 0 0 defined $ch and $ch =~ /\d/
2067 0 0 0 defined $ch and $ch eq '.'
2071 0 0 0 defined $ch && $ch =~ /\d/
2078 0 0 0 defined next_chr() and $ch =~ /\d/
2083 0 0 0 defined $ch and $ch eq 'e' || $ch eq 'E'
2087 0 0 0 defined $ch and $ch eq '+' || $ch eq '-'
0 0 0 defined $ch and $ch =~ /\d/
2102 0 0 0 defined next_chr() and $ch =~ /\d/
2110 0 0 0 not $v =~ /[.eE]/ and length $v > $max_intsize
2198 0 0 0 $cb_sk_object and @ks == 1
0 0 0 $cb_sk_object and @ks == 1 and exists $$cb_sk_object{$ks[0]}
0 0 0 $cb_sk_object and @ks == 1 and exists $$cb_sk_object{$ks[0]} and ref $$cb_sk_object{$ks[0]}
2262 0 1 0 $] >= 5.008 and $] < 5.008003
2425 0 0 0 utf8::is_utf8($text) and not utf8::is_utf8($$self{'incr_text'})
2447 0 0 0 not $$self{'incr_nest'} and $$self{'incr_mode'} == 3
2527 0 0 0 $$self{'incr_mode'} == 1 and not $$self{'incr_nest'}
2528 0 0 0 $$self{'incr_mode'} == 3 and $$self{'incr_nest'} > 0
2608 0 0 0 $lwp eq 'auto' and eval { do { require LWP::UserAgent; 'LWP::UserAgent'->VERSION(5.802) } }
2634 0 0 0 $$res{'success'} and not $ENV{'TEST_MODULEVERSION_REQUEST_FAIL'}

or 2 conditions

line l !l condition
23 0 1 $methods[0] || ''
171 0 0 $class->VERSION || 0
197 0 0 $args || {}
0 0 $args || {}
0 0 $args || {}
0 0 $args || {}
0 0 $args || {}
266 0 0 $args ||= {}
390 0 0 $$request{'headers'}{'content-type'} ||= 'application/octet-stream'
698 0 0 $headers ||= {}
783 0 0 $$response{'headers'}{'transfer-encoding'} || ''
1464 0 0 reftype($_[1]) || ''
1755 0 0 JSON_PP_decode_surrogates($utf16, $u) || (next)
1765 0 0 JSON_PP_decode_unicode($u) || (next)
1867 0 0 $_[0] || []
1917 0 0 $_[0] || {}
2585 0 0 $opts ||= {}
2667 0 0 $opts{'ignore'} || []

or 3 conditions

line l !l&&r !l&&!r condition
69 0 2 0 ref $class || $class
75 0 10 0 ref $self || $self
91 3 7 0 not ref $default or ref $default eq 'CODE'
197 0 0 0 @_ == 2 or @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 2 or @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 2 or @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 2 or @_ == 3 and ref $args eq 'HASH'
0 0 0 @_ == 2 or @_ == 3 and ref $args eq 'HASH'
210 0 0 0 @_ == 3 or @_ == 4 and ref $args eq 'HASH'
233 0 0 0 @_ == 3 or @_ == 4 and ref $args eq 'HASH'
236 0 0 0 $$args{'headers'}{'if-modified-since'} ||= $self->_http_date($mtime)
254 0 0 0 $$response{'success'} ||= $$response{'status'} eq '304'
264 0 0 0 @_ == 3 or @_ == 4 and ref $args eq 'HASH'
296 0 0 0 ref $data eq 'HASH' or ref $data eq 'ARRAY'
363 0 0 0 $method eq 'HEAD' or $$response{'status'} =~ /^[23]04/
387 0 0 0 $$request{'headers'}{'user-agent'} ||= $$self{'agent'}
392 0 0 0 $$request{'headers'}{'content-length'} or $$request{'headers'}{'transfer-encoding'}
403 0 0 0 $$request{'headers'}{'content-length'} or $$request{'headers'}{'transfer-encoding'}
438 0 0 0 $status eq '303' || $status =~ /^30[127]/ && $method =~ /^GET|HEAD$/
641 0 0 0 @_ == 2 or @_ == 3
696 0 0 0 @_ == 1 or @_ == 2
805 0 0 0 @_ == 3 or @_ == 4
807 0 0 0 $content_length ||= $$response{'headers'}{'content-length'}
955 0 0 0 not $timeout or ($pending = $timeout - (time - $initial)) > 0
965 0 0 0 @_ == 1 or @_ == 2
971 0 0 0 @_ == 1 or @_ == 2
1080 0 0 0 $JSON ||= 'Test::ModuleVersion::JSON::PP'->new->utf8
1085 0 0 0 $JSON ||= 'Test::ModuleVersion::JSON::PP'->new->utf8
1175 0 0 0 $_[0]{'cb_object'} || $_[0]{'cb_sk_object'}
1183 0 0 0 $_[0]{'cb_object'} || $_[0]{'cb_sk_object'}
1188 0 0 0 not defined $_[1] or $_[1] > 15
0 0 0 not defined $_[1] or $_[1] > 15 or $_[1] < 0
1264 0 0 0 ref $obj or $$idx[7]
1271 0 0 0 $ascii or $latin1
0 0 0 $ascii or $latin1 or $utf8
1343 0 0 0 $self->object_to_json($$obj{$k}) || $self->value_to_json($$obj{$k})
1365 0 0 0 $self->object_to_json($v) || $self->value_to_json($v)
1410 0 0 0 $type eq 'SCALAR' or $type eq 'REF'
1619 0 0 0 not defined $text or ref $text
1652 0 0 0 $octets[0] || $octets[1]
1669 0 0 0 $$idx[7] or ref $result
1701 0 0 0 $ch eq '"' or $singlequote and $ch eq q[']
1702 0 0 0 $ch =~ /[0-9]/ or $ch eq '-'
1715 0 0 0 $ch eq '"' or $singlequote and $ch eq q[']
1938 0 0 0 not defined $ch or $ch ne ':'
2083 0 0 0 $ch eq 'e' || $ch eq 'E'
2087 0 0 0 $ch eq '+' || $ch eq '-'
2090 0 0 0 not defined $ch or $ch =~ /\D/
2206 0 0 0 @val == 0 or @val > 1
2280 0 0 0 $_[0]{'_incr_parser'} ||= 'Test::ModuleVersion::JSON::PP::IncrParser'->new
2285 0 0 0 $_[0]{'_incr_parser'} ||= 'Test::ModuleVersion::JSON::PP::IncrParser'->new
2290 0 0 0 $_[0]{'_incr_parser'} ||= 'Test::ModuleVersion::JSON::PP::IncrParser'->new
2293 0 0 0 $_[0]{'_incr_parser'} ||= 'Test::ModuleVersion::JSON::PP::IncrParser'->new
2507 0 0 0 $s eq '[' or $s eq '{'
0 0 0 $s eq ']' or $s eq '}'
2608 0 0 0 $lwp eq 'use' or $lwp eq 'auto' and eval { do { require LWP::UserAgent; 'LWP::UserAgent'->VERSION(5.802) } }