hledger-lib-1.30: A reusable library providing the core functionality of hledger
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hledger.Utils.Test

Synopsis

Documentation

data Timeout #

Instances

Instances details
Show Timeout 
Instance details

Defined in Test.Tasty.Options.Core

IsOption Timeout 
Instance details

Defined in Test.Tasty.Options.Core

data TestTree #

askOption :: IsOption v => (v -> TestTree) -> TestTree #

localOption :: IsOption v => v -> TestTree -> TestTree #

defaultIngredients :: [Ingredient] #

includingOptions :: [OptionDescription] -> Ingredient #

defaultMainWithIngredients :: [Ingredient] -> TestTree -> IO () #

adjustOption :: IsOption v => (v -> v) -> TestTree -> TestTree #

withResource :: IO a -> (a -> IO ()) -> (IO a -> TestTree) -> TestTree #

assertLeft :: (HasCallStack, Eq b, Show b) => Either a b -> Assertion Source #

Assert any Left value.

assertRight :: (HasCallStack, Eq a, Show a) => Either a b -> Assertion Source #

Assert any Right value.

assertParse :: (HasCallStack, Default st) => StateT st (ParsecT HledgerParseErrorData Text IO) a -> Text -> Assertion Source #

Assert that this stateful parser runnable in IO successfully parses all of the given input text, showing the parse error if it fails. Suitable for hledger's JournalParser parsers.

assertParseEq :: (HasCallStack, Eq a, Show a, Default st) => StateT st (ParsecT HledgerParseErrorData Text IO) a -> Text -> a -> Assertion Source #

Assert a parser produces an expected value.

assertParseEqOn :: (HasCallStack, Eq b, Show b, Default st) => StateT st (ParsecT HledgerParseErrorData Text IO) a -> Text -> (a -> b) -> b -> Assertion Source #

Like assertParseEq, but transform the parse result with the given function before comparing it.

assertParseError :: (HasCallStack, Eq a, Show a, Default st) => StateT st (ParsecT HledgerParseErrorData Text IO) a -> Text -> String -> Assertion Source #

Assert that this stateful parser runnable in IO fails to parse the given input text, with a parse error containing the given string.

assertParseE :: (HasCallStack, Eq a, Show a, Default st) => StateT st (ParsecT HledgerParseErrorData Text (ExceptT FinalParseError IO)) a -> Text -> Assertion Source #

assertParseEqE :: (Default st, Eq a, Show a, HasCallStack) => StateT st (ParsecT HledgerParseErrorData Text (ExceptT FinalParseError IO)) a -> Text -> a -> Assertion Source #

assertParseErrorE :: (Default st, Eq a, Show a, HasCallStack) => StateT st (ParsecT HledgerParseErrorData Text (ExceptT FinalParseError IO)) a -> Text -> String -> Assertion Source #

assertParseStateOn :: (HasCallStack, Eq b, Show b, Default st) => StateT st (ParsecT HledgerParseErrorData Text IO) a -> Text -> (st -> b) -> b -> Assertion Source #

Run a stateful parser in IO like assertParse, then assert that the final state (the wrapped state, not megaparsec's internal state), transformed by the given function, matches the given expected value.