@@ -61,6 +61,8 @@ main = hspecX $ do
6161 it "parses when all lowercase" caseLowercaseBool
6262 it "parses when all uppercase" caseUppercaseBool
6363 it "parses when titlecase" caseTitlecaseBool
64+ describe "empty input" $ do
65+ it "doesn't crash" caseEmptyInput
6466
6567counter :: Monad m => (Y.Event -> Bool) -> C.Sink Y.Event m Int
6668counter pred' =
@@ -322,3 +324,6 @@ caseLowercaseBool, caseUppercaseBool, caseTitlecaseBool :: Assertion
322324caseLowercaseBool = D.decode "foo: off\nbar: y\nbaz: true" @?= obj
323325caseUppercaseBool = D.decode "foo: FALSE\nbar: Y\nbaz: ON" @?= obj
324326caseTitlecaseBool = D.decode "foo: No\nbar: Yes\nbaz: True" @?= obj
327+
328+caseEmptyInput :: Assertion
329+caseEmptyInput = D.decode B8.empty @?= (Nothing :: Maybe D.Value)