Branch Coverage

blib/lib/Schedule/Cron.pm
Criterion Covered Total %
branch 197 346 56.9


line true false branch
78 0 17 $@ ? :
142 0 0 if ($HAS_POSIX) { }
145 0 0 if ($STARTEDCHILD{$pid})
146 0 0 $HAS_POSIX ? :
147 0 0 if ($res > 0)
150 0 0 if $DEBUG
179 6 0 $HAS_POSIX ? :
180 0 6 if $DEBUG
181 1 0 if ($kid != 0 and $kid != -1 and defined $STARTEDCHILD{$kid})
186 0 1 if $DEBUG
211 4 10 if $HAS_POSIX and not $cfg->{'nofork'}
218 0 5 unless $STARTEDCHILD{$k}
374 0 27 unless ref $dispatcher eq "CODE"
375 6 21 ref $_[0] eq 'HASH' ? :
376 24 3 unless $cfg->{'processprefix'}
387 1 26 if $cfg->{'file'}
433 4 1 if ($cfg)
435 1 3 if (@_) { }
2 1 elsif (not ref $cfg) { }
437 0 1 ref $cfg eq 'HASH' ? :
450 0 5 unless open F, $file
458 160 185 if /^\s*$/
459 0 185 if /^\s*#/
469 185 0 if ($rest)
472 15 170 if ($col6 =~ m[^[\d\-\*\,/]+$]) { }
622 193 26 if (ref $args eq 'HASH') { }
4 22 elsif (ref $args eq 'CODE') { }
628 112 81 if ($cfg->{'eval'} and $cfg)
630 1 111 if ref $args
632 0 111 if $DEBUG
634 0 111 if $@
643 81 137 if (ref $args ne "ARRAY")
651 185 33 ref $time ? :
652 1 217 if $#$time_array != 4 and $#$time_array != 5
669 193 24 if $id
729 91 1 if ($entry) { }
750 3 0 if ($idx <= $#{$$self{'time_table'};}) { }
760 2 4 if ($map->{$key} > $idx) { }
2 2 elsif ($map->{$key} == $idx) { }
787 0 1 unless $entry
788 0 1 unless $entry->{'time'}
790 1 0 if ($idx <= $#{$$self{'time_table'};}) { }
794 1 0 unless $new_entry->{'dispatcher'}
796 0 1 unless $new_entry->{'args'}
858 1 17 ref $_[0] eq 'HASH' ? :
863 18 0 unless defined $loglevel
868 0 18 unless @{$self->{'queue'};}
871 5 13 unless ($cfg->{'nofork'})
874 0 1 if $DEBUG
876 1 0 if ($old_child_handler and ref $old_child_handler eq "CODE")
878 0 1 if $DEBUG
887 2 16 if (my $name = $cfg->{'processname'})
895 0 31 unless (@{$self->{'queue'};})
902 0 31 if $DEBUG
905 0 31 if ($time < $now) { }
907 0 0 if ($cfg->{'skip'})
910 0 0 if $log and $loglevel <= 0
924 27 2 unless ($cfg->{'processname'} or $cfg->{'nostatus'})
928 0 31 unless ($time)
929 0 0 unless $time
932 0 31 if $DEBUG
936 0 31 if ($sleeper) { }
939 0 0 if ($self->{'entries_changed'})
955 1 20 if $cfg->{'skip'} and $time < $self->_now
959 3 11 if ($self->{'entries_changed'}) { }
960 0 3 if $DEBUG
971 0 18 if ($cfg->{'detach'}) { }
973 0 0 unless defined(my $pid = fork)
974 0 0 if ($pid) { }
977 0 0 if ($cfg->{'pid_file'})
979 0 0 if (open P, '>' . $cfg->{'pid_file'}) { }
997 0 0 unless open STDIN, "/dev/null"
998 0 0 unless open STDOUT, ">/dev/null"
1001 0 0 if ($@) { }
1004 0 0 if (open T, "/dev/tty")
1008 0 0 if ($@)
1011 0 0 if ($@)
1017 0 0 if $@ or not $notty
1018 0 0 unless ioctl T, $notty, 0
1024 0 0 unless &POSIX::setsid()
1026 0 0 unless open STDERR, ">&STDOUT"
1028 0 0 unless ($cfg->{'processname'} or $cfg->{'nostatus'})
1122 50 52 unless ref $cron_entry
1126 0 101 if $#$cron_entry != 4 and $#$cron_entry != 5
1142 34 1358 if ($t =~ m[^([^-]+)-([^-/]+)(/(.*))?$]) { }
1145 10 24 unless $step
1146 7 27 unless ($low =~ /^(\d+)/)
1150 7 27 unless ($high =~ /^(\d+)/)
1154 0 34 if (not defined $low && defined $high or $low > $high or not $step =~ /^\d+$/)
1166 11 1347 unless $t =~ /^(\d+|\*)$/
1167 2 1356 if exists $LOWMAP[$i]{$t}
1169 0 949 if not defined $t or $t ne "*" and $t < $RANGES[$i][0] || $t > $RANGES[$i][1]
1174 409 150 $#res == 0 && $res[0] eq '*' ? :
1184 4 97 if ($expanded[2][0] ne '*' and $expanded[4][0] ne '*') { }
1193 0 4 if $DEBUG
1194 3 1 $t1 < $t2 ? :
1286 7 29 unless ($cfg->{'nofork'})
1288 4 3 if ($pid = fork)
1291 0 4 if $log and $loglevel <= 0
1300 0 32 unless ref $dispatch eq "CODE"
1305 3 29 if (defined $args and defined $args->[0])
1311 7 25 if ($log and $loglevel <= 0 or not $cfg->{'nofork'} || $cfg->{'processname'} || $cfg->{'nostatus'})
1312 0 7 @args && $loglevel <= -1 ? :
1314 3 0 unless $cfg->{'nofork'} or $cfg->{'processname'} or $cfg->{'nostatus'}
1315 4 3 if $log and $loglevel <= 0
1319 2 30 if ($cfg->{'catch'}) { }
1326 2 0 if ($@)
1328 2 0 if $log and $loglevel <= 2
1338 1 19 if ($cfg->{'after_job'})
1340 1 0 if (ref $job eq 'CODE') { }
1345 0 1 if ($@)
1347 0 0 if $log and $loglevel <= 2
1351 0 0 if $log and $loglevel <= 2
1356 3 17 if $log and $loglevel <= 0
1357 3 17 unless $cfg->{'nofork'}
1371 0 48 if ($new_time <= $now)
1372 0 0 if $DEBUG
1379 0 48 if $DEBUG
1400 54 51 $expanded->[5] ? :
1419 0 131 if $DEBUG
1422 21 110 if ($expanded->[3][0] ne "*")
1424 8 13 unless (defined($dest_mon = $self->_get_nearest($dest_mon, $expanded->[3])))
1432 28 103 if ($expanded->[2][0] ne '*') { }
1434 12 16 if ($dest_mon != $now_mon) { }
1440 5 11 unless (defined($dest_mday = $self->_get_nearest($dest_mday, $expanded->[2])))
1445 5 0 if ($dest_mon > 12)
1450 0 5 if $DEBUG
1457 98 5 $dest_mon == $now_mon ? :
1461 17 109 if ($expanded->[4][0] ne '*') { }
1464 7 10 unless $dest_wday
1468 3 14 if $dest_mon != $now_mon
1475 0 17 if $DEBUG
1476 3 14 if ($mon != $dest_mon or $year != $dest_year)
1477 0 3 if $DEBUG
1490 0 109 unless ($dest_mday)
1492 0 0 $dest_mon == $now_mon ? :
1498 46 77 if ($expanded->[1][0] ne '*') { }
1500 27 19 if ($dest_mday != $now_mday or $dest_mon != $now_mon or $dest_year != $now_year) { }
1507 8 11 unless (defined($dest_hour = $self->_get_nearest($dest_hour, $expanded->[1])))
1523 74 3 $dest_mday == $now_mday ? :
1526 40 75 if ($expanded->[0][0] ne '*') { }
1528 30 10 if ($dest_hour != $now_hour or $dest_mday != $now_mday or $dest_mon != $dest_mon or $dest_year != $now_year) { }
1534 2 8 unless (defined($dest_min = $self->_get_nearest($dest_min, $expanded->[0])))
1550 1 66 if ($dest_hour != $now_hour or $dest_mday != $now_mday or $dest_year != $now_year)
1557 61 52 if ($expanded->[5]) { }
1559 45 16 if ($expanded->[5][0] ne '*') { }
1561 7 38 if ($dest_min != $now_min) { }
1567 7 31 unless (defined($dest_sec = $self->_get_nearest($dest_sec, $expanded->[5])))
1584 16 0 $dest_min == $now_min ? :
1595 0 106 if $DEBUG
1598 105 1 if ($result) { }
1633 84 385 if ($to_check->[$i] >= $x)
1667 0 15 if ($DEBUG)
1673 0 0 if (length $caller > 22)
1699 0 0 if ($inp)
1701 0 0 unless parsedate($inp)
1714 0 0 if (@entries != 5)
1726 0 0 if ($@)
1729 0 0 if ($@ eq 'TIMEOUT') { }
1739 0 0 if ($next_time > 0) { }
1753 0 0 unless ($expected_time = parsedate($inp))
1763 0 0 if ($expected eq $next) { }
1774 0 0 unless defined $email
1776 0 0 unless defined $email
1786 0 0 if $email
1790 0 0 unless ($endless)
1815 0 0 unless (defined $input_initialized)
1819 0 0 $@ ? :
1820 0 0 if ($input_initialized)
1827 0 0 if ($input_initialized) { }
1838 0 0 if ($#prompt > 0)
1870 0 101 unless ref $entry eq "ARRAY"
1874 0 559 unless ref $entry->[$i] eq "ARRAY"