summaryrefslogtreecommitdiff
path: root/lib/Time/Local.t
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Time/Local.t')
-rwxr-xr-xlib/Time/Local.t19
1 files changed, 18 insertions, 1 deletions
diff --git a/lib/Time/Local.t b/lib/Time/Local.t
index 4ae739227b..bba67963fc 100755
--- a/lib/Time/Local.t
+++ b/lib/Time/Local.t
@@ -77,7 +77,7 @@ my $tests = (@time * 12);
$tests += @neg_time * 12;
$tests += @bad_time;
$tests += @years;
-$tests += 5;
+$tests += 10;
$tests += 2 if $ENV{PERL_CORE};
$tests += 8 if $ENV{MAINTAINER};
@@ -171,8 +171,25 @@ SKIP:
skip 'this platform does not support negative epochs.', 1
unless $neg_epoch_ok;
+ eval { timegm(0,0,0,29,1,1900) };
+ like($@, qr/Day '29' out of range 1\.\.28/,
+ 'does not accept leap day in 1900');
+
+ eval { timegm(0,0,0,29,1,200) };
+ like($@, qr/Day '29' out of range 1\.\.28/,
+ 'does not accept leap day in 2100 (year passed as 200)');
+
+ eval { timegm(0,0,0,29,1,0) };
+ is($@, '', 'no error with leap day of 2000 (year passed as 0)');
+
eval { timegm(0,0,0,29,1,1904) };
is($@, '', 'no error with leap day of 1904');
+
+ eval { timegm(0,0,0,29,1,4) };
+ is($@, '', 'no error with leap day of 2004 (year passed as 4)');
+
+ eval { timegm(0,0,0,29,1,96) };
+ is($@, '', 'no error with leap day of 1996 (year passed as 96)');
}
if ($ENV{MAINTAINER}) {