Condition Coverage

blib/lib/XML/RSS/TimingBot.pm
Criterion Covered Total %
condition 42 75 56.0


and 3 conditions

line !l l&&!r l&&r condition
215 0 0 11 $c and $$c
282 0 1 92 $contentref and $$contentref
305 3 0 6 defined $etag and length $etag
3 0 6 defined $etag and length $etag and length $etag < 251
0 0 6 defined $etag and length $etag and length $etag < 251 and not $etag =~ /[\n\r]/
323 0 0 9 defined $time_string and $time_string =~ /^[- \,\.\:a-zA-Z0-9]{4,40}$/s
0 0 9 defined $time_string and $time_string =~ /^[- \,\.\:a-zA-Z0-9]{4,40}$/s and $time_string =~ /[0-9A-Za-z]/
360 11 0 1 defined $lastmod and length $lastmod
378 11 0 1 defined $etag and length $etag
420 0 42 1 ref $_[0] and defined $_[0]{'_now_hack'}
437 94 0 15 $$for_db{$url} and exists $$for_db{$url}{$varname}
444 26 22 46 $$from_db{$url} and exists $$from_db{$url}{$varname}
499 3 6 14 $$from_db{$url} and exists $$from_db{$url}{$varname}
595 3 0 4 -e $dbfile and -s _
604 0 3 7 @f >= 2 and not exists $$to_write{"$f[0] $f[1]"}
636 0 0 30 defined $file and length $file
687 0 0 552 $c and ref $c eq 'SCALAR'
688 0 0 552 $timing and ref $timing
0 0 552 $timing and ref $timing and ref $timing ne 'SCALAR'

or 2 conditions

line l !l condition
123 28 56 $_ || q['']
339 0 11 $this_res->previous || (last)
436 88 21 $$self{'rsstimingbot_for_db'} ||= {}
443 73 21 $$self{'rsstimingbot_from_db'} ||= {}
483 23 0 $$self{'rsstimingbot_from_db'} ||= {}
508 10 0 $$self{'rsstimingbot_for_db'} || (return)

or 3 conditions

line l !l&&r !l&&!r condition
245 0 9 0 $$self{'_rss_timing_obj'} || 'XML::RSS::Timing'->new
561 0 0 0 $$self{'_dbpath'} || $ENV{'TIMINGBOTPATH'} || $ENV{'APPDATA'} || $ENV{'HOME'} || do { require File::Spec; 'File::Spec'->curdir }