Branch Coverage

blib/lib/Date/Parse.pm
Criterion Covered Total %
branch 121 202 59.9


line true false branch
222 19 5 if ($obj)
228 0 19 unless my $sub = eval "$obj_strptime"
0 8 if @_
0 8 unless $dtstr =~ /\S/
0 8 if ($dtstr =~ s/\s(\d{4})([-:]?)(\d\d?)\2(\d\d?)(?:[-Tt ](\d\d?)(?:([-:]?)(\d\d?)(?:\6(\d\d?)(?:[.,](\d+))?)?)?)?(?=\D)/ /)
0 8 if ($dtstr =~ s/\s(\d{4})([-:]?)(\w{3,})\2(\d\d?)(?:[-Tt ](\d\d?)(?:([-:]?)(\d\d?)(?:\6(\d\d?)(?:[.,](\d+))?)?)?)?(?=\D)/ /)
0 1 if $5
0 1 if $6
1 7 if ($dtstr =~ s/[:\s](\d\d?):(\d\d?)(:(\d\d?)(?:\.\d+)?)?(z)?\s*(?:([ap])\.?m?\.?)?\s/ /o) { }
0 7 elsif ($dtstr =~ s/\s(\d\d?)\s*([ap])\.?m?\.?\s/ /o) { }
8 0 unless (defined $hh)
0 1 if (defined $hh and $hh <= 12 and $dtstr =~ s/ ([ap])\.?m?\.?\s/ /o)
0 0 if $5
0 0 if $month > 12
0 0 if length $year > 2 and $year < 1901
0 0 if ($5)
0 8 if ($dtstr =~ s[\s(\d\d?)([\-\./])($monpat)(\2(\d\d+))?\s][ ]o) { }
0 8 elsif ($dtstr =~ s[\s(\d+)([\-\./])(\d\d?)(\2(\d+))?\s][ ]o) { }
7 1 elsif ($dtstr =~ s/\s(\d+)\s*($sufpat)?\s*($monpat)/ /o) { }
1 0 elsif ($dtstr =~ s/($monpat)\s*(\d+)\s*($sufpat)?\s/ /o) { }
0 0 elsif ($dtstr =~ s[($monpat)([\/-])(\d+)[\/-]][ ]o) { }
0 0 elsif ($dtstr =~ s/\s(\d\d)(\d\d)(\d\d)\s/ /o) { }
8 0 if not defined $year and $dtstr =~ s/\s(\d{2}(\d{2})?)[\s\.,]/ /o
8 0 unless (defined $year)
0 8 if $dtstr =~ s/\bdst\b//o
0 0 if $2 and $2 eq "dst"
0 0 unless defined $zone
0 0 defined $4 ? :
0 0 defined $1 ? :
0 0 unless defined $zone
0 8 if ($dtstr =~ s/\s"?([a-z]{3,4})(dst|\d+[a-z]*|_[a-z]+)?"?\s/ /o) { }
0 8 elsif ($dtstr =~ s/\s([a-z]{3,4})?([\-\+]?)-?(\d\d?):?(\d\d)?(00)?\s/ /o) { }
0 0 defined $4 ? :
0 0 defined $1 ? :
0 0 unless defined $zone
0 0 if ($dtstr =~ s/^\s*(ut?|z)\s*$//) { }
0 0 elsif ($dtstr =~ s/\s([a-z]{3,4})?([\-\+]?)-?(\d\d?)(\d\d)?(00)?\s/ /o) { }
0 0 if $dtstr =~ /\S/o
0 8 if ($dtstr =~ /\S/)
0 0 if $merid == $AM
0 1 if ($hh == 12) { }
0 1 elsif ($merid == $PM) { }
1 7 if (defined $hh)
8 0 if (defined $year and $year > 1900)
0 8 if defined $zone and $dst
0 8 if $frac
232 0 5 unless eval "$strptime"
0 480 if @_
3 477 unless $dtstr =~ /\S/
51 426 if ($dtstr =~ s/\s(\d{4})([-:]?)(\d\d?)\2(\d\d?)(?:[-Tt ](\d\d?)(?:([-:]?)(\d\d?)(?:\6(\d\d?)(?:[.,](\d+))?)?)?)?(?=\D)/ /)
3 474 if ($dtstr =~ s/\s(\d{4})([-:]?)(\w{3,})\2(\d\d?)(?:[-Tt ](\d\d?)(?:([-:]?)(\d\d?)(?:\6(\d\d?)(?:[.,](\d+))?)?)?)?(?=\D)/ /)
2 417 if $5
12 407 if $6
419 11 if ($dtstr =~ s/[:\s](\d\d?):(\d\d?)(:(\d\d?)(?:\.\d+)?)?(z)?\s*(?:([ap])\.?m?\.?)?\s/ /o) { }
0 11 elsif ($dtstr =~ s/\s(\d\d?)\s*([ap])\.?m?\.?\s/ /o) { }
430 47 unless (defined $hh)
2 464 if (defined $hh and $hh <= 12 and $dtstr =~ s/ ([ap])\.?m?\.?\s/ /o)
3 4 if $5
6 0 if $month > 12
0 6 if length $year > 2 and $year < 1901
6 0 if ($5)
7 416 if ($dtstr =~ s[\s(\d\d?)([\-\./])($monpat)(\2(\d\d+))?\s][ ]o) { }
6 410 elsif ($dtstr =~ s[\s(\d+)([\-\./])(\d\d?)(\2(\d+))?\s][ ]o) { }
226 184 elsif ($dtstr =~ s/\s(\d+)\s*($sufpat)?\s*($monpat)/ /o) { }
167 17 elsif ($dtstr =~ s/($monpat)\s*(\d+)\s*($sufpat)?\s/ /o) { }
6 11 elsif ($dtstr =~ s[($monpat)([\/-])(\d+)[\/-]][ ]o) { }
0 11 elsif ($dtstr =~ s/\s(\d\d)(\d\d)(\d\d)\s/ /o) { }
398 25 if not defined $year and $dtstr =~ s/\s(\d{2}(\d{2})?)[\s\.,]/ /o
423 54 unless (defined $year)
0 477 if $dtstr =~ s/\bdst\b//o
0 290 if $2 and $2 eq "dst"
1 289 unless defined $zone
136 0 defined $4 ? :
0 136 defined $1 ? :
0 136 unless defined $zone
290 187 if ($dtstr =~ s/\s"?([a-z]{3,4})(dst|\d+[a-z]*|_[a-z]+)?"?\s/ /o) { }
136 51 elsif ($dtstr =~ s/\s([a-z]{3,4})?([\-\+]?)-?(\d\d?):?(\d\d)?(00)?\s/ /o) { }
0 0 defined $4 ? :
0 0 defined $1 ? :
0 0 unless defined $zone
14 1 if ($dtstr =~ s/^\s*(ut?|z)\s*$//) { }
0 1 elsif ($dtstr =~ s/\s([a-z]{3,4})?([\-\+]?)-?(\d\d?)(\d\d)?(00)?\s/ /o) { }
1 14 if $dtstr =~ /\S/o
15 461 if ($dtstr =~ /\S/)
2 21 if $merid == $AM
23 443 if ($hh == 12) { }
10 433 elsif ($merid == $PM) { }
466 9 if (defined $hh)
310 165 if (defined $year and $year > 1900)
0 475 if defined $zone and $dst
8 467 if $frac
243 5 473 unless @t
255 9 464 unless defined $month
258 9 464 unless defined $day
261 6 9 $month > $lt[4] ? :
14 459 unless defined $year
265 307 166 if defined $century
268 1 472 unless $month <= 11 and $day >= 1 and $day <= 31 and $hh <= 23 and $mm <= 59 and $ss <= 59
273 439 34 if (defined $zone) { }
279 0 439 if not defined $result or $result == -1 and join("", $ss, $mm, $hh, $day, $month, $year) ne "595923311169"
291 1 33 if not defined $result or $result == -1 and join("", $ss, $mm, $hh, $day, $month, $year) ne join("", (localtime -1)[0..5])