assertParseFailure

This commit is contained in:
Simon Michael 2011-05-31 19:48:55 +00:00
parent 171c0e73ea
commit 8521c07df7

View File

@ -402,6 +402,10 @@ a `is` e = assertEqual "" e a
assertParse :: (Either ParseError a) -> Assertion assertParse :: (Either ParseError a) -> Assertion
assertParse parse = either (assertFailure.show) (const (return ())) parse assertParse parse = either (assertFailure.show) (const (return ())) parse
-- | Assert a parse result is successful, printing the parse error on failure.
assertParseFailure :: (Either ParseError a) -> Assertion
assertParseFailure parse = either (const $ return ()) (const $ assertFailure "parse should not have succeeded") parse
-- | Assert a parse result is some expected value, printing the parse error on failure. -- | Assert a parse result is some expected value, printing the parse error on failure.
assertParseEqual :: (Show a, Eq a) => (Either ParseError a) -> a -> Assertion assertParseEqual :: (Show a, Eq a) => (Either ParseError a) -> a -> Assertion
assertParseEqual parse expected = either (assertFailure.show) (`is` expected) parse assertParseEqual parse expected = either (assertFailure.show) (`is` expected) parse