on master help sign in
add test for leap seconds
commitd0d0c5b1c208290541b5494e9e598d8da98a2625 authorAdam Schønemann <adamschoenemann@gmail.com> dateTue 11 Sep 2018, 14:06 (8 years ago) parent7ccff02
1 file changed+8
tests/UnitTests.hs+8
tests/UnitTests.hs+8
@@ -198,6 +198,14 @@ utcTimeGood = do
198198 assertEqual "utctime" (parseWithRead "%FT%H:%MZ" ts10) t10
199199 assertEqual "utctime" (parseWithRead "%F %H:%MZ" ts11) t11
200200 assertEqual "utctime" (parseWithRead "%FT%T%QZ" "2015-01-01T14:30:00Z") t12
201+
202+ -- leap seconds are included correctly
203+ let ts13 = "2015-08-23T23:59:60.128+00" :: LT.Text
204+ let (Just (t13 :: UTCTime)) = parseWithAeson ts13
205+ assertEqual "utctime" (parseWithRead "%FT%T%QZ" "2015-08-23T23:59:60.128Z") t13
206+ let ts14 = "2015-08-23T23:59:60.999999999999+00" :: LT.Text
207+ let (Just (t14 :: UTCTime)) = parseWithAeson ts14
208+ assertEqual "utctime" (parseWithRead "%FT%T%QZ" "2015-08-23T23:59:60.999999999999Z") t14
201209
202210 where
203211 parseWithRead :: String -> LT.Text -> UTCTime