Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
module type TESTABLE = sig ... end
TESTABLE
provides an abstract description for testable values.
val testable : 'a Fmt.t -> ('a -> 'a -> bool) -> 'a testable
testable pp eq
is a new testable
with the pretty-printer pp
and equality eq
.
val pp : 'a testable -> 'a Fmt.t
pp t
is t
's pretty-printer.
val equal : 'a testable -> 'a -> 'a -> bool
equal t
is t
's equality.
val bool : bool testable
bool
tests booleans.
val int : int testable
int
tests integers.
val int32 : int32 testable
int32
tests 32-bit integers.
val int64 : int64 testable
int64
tests 64-bit integers.
val float : float -> float testable
float
tests floats with specified absolute error.
val char : char testable
char
tests characters.
val string : string testable
string
tests OCaml strings.
val bytes : bytes testable
bytes
tests OCaml bytes.
val unit : unit testable
unit
tests unit values (useful for functions with side-effects).
slist t comp
tests sorted lists of t
s. The list are sorted using comp
.
result t e
tests t
s on success and e
s on failure.
val of_pp : 'a Fmt.t -> 'a testable
of_pp pp
tests values which can be printed using pp
and compared using Pervasives.compare
val pass : 'a testable
pass
tests values of any type and always succeeds.
val reject : 'a testable
reject
tests values of any type and always fails.
val check : 'a testable -> string -> 'a -> 'a -> unit
Check that two values are equal.
val check' : 'a testable -> msg:string -> expected:'a -> actual:'a -> unit
Check that two values are equal (labeled variant of check
).
Simply fail with a formatted message.
neg t
is t
's negation: it is true
when t
is false
and it is false
when t
is true
.