record Result : Type.pass : Result -> Natpass : Result -> Nat.fail : Result -> Natfail : Result -> NatrunTests : Pretty a => String -> (String -> String -> IOEither Error a) -> IO ResultrunTestsOnly : Pretty a => List String -> String -> (String -> String -> IOEither Error a) -> IO ResultrunTestFail : Show a => String -> (String -> IOEither Error a) -> IO ResultppResult : Result -> StringppResultFail : Result -> String