@@ -198,7 +198,7 @@ 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−
201+
202202 -- leap seconds are included correctly
203203 let ts13 = "2015-08-23T23:59:60.128+00" :: LT.Text
204204 let (Just (t13 :: UTCTime)) = parseWithAeson ts13
@@ -226,6 +226,7 @@ utcTimeBad = do
226226 verifyFailParse "2015-01-01T12:30:00.00+00:00Z" -- no Zulu if offset given
227227 verifyFailParse "2015-01-03 12:13:00.Z" -- decimal at the end but no digits
228228 verifyFailParse "2015-01-03 12:13.000Z" -- decimal at the end, but no seconds
229+ verifyFailParse "2015-01-03 23:59:61Z" -- exceeds allowed seconds per day
229230 where
230231 verifyFailParse (s :: LT.Text) =
231232 let (dec :: Maybe UTCTime) = decode . LT.encodeUtf8 $ LT.concat ["\"", s, "\""] in