diff --git a/src/Dotenv/Internal/Parse.purs b/src/Dotenv/Internal/Parse.purs index e1aa8db..52e36cf 100644 --- a/src/Dotenv/Internal/Parse.purs +++ b/src/Dotenv/Internal/Parse.purs @@ -71,4 +71,4 @@ value = (quotedValue '"' <|> quotedValue '\'' <|> unquotedValue) "variable v -- | Parses a setting in the form of `NAME=value`. setting :: Parser String Setting -setting = Tuple <$> name <*> value +setting = Tuple <$> name <*> value <* many (noneOf newlineChars) diff --git a/test/Parse.purs b/test/Parse.purs index 5bc062d..3c3f60b 100644 --- a/test/Parse.purs +++ b/test/Parse.purs @@ -29,8 +29,8 @@ tests = describe "settings parser" do it "skips comments on the same line after a setting" $ let - expected = Right [ Tuple "A" $ LiteralValue "B", Tuple "C" $ LiteralValue "D" ] - actual = "A=B\nC=D # Testing" `runParser` settings + expected = Right [ Tuple "A" $ LiteralValue "B", Tuple "C" $ LiteralValue "D", Tuple "E" $ LiteralValue "F" ] + actual = "A=B\nC=D # Testing\nE=F" `runParser` settings in actual `shouldEqual` expected