@@ -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