std.test

A simple test library.

Types

type Test a = std.effect.writer.Writer (std.list.List String) a

type TestEff r a = std.effect.Eff [| writer : std.test.Test | r |] a

type TestEffIO r a = std.effect.Eff
        [| writer : std.test.Test, lift : std.effect.lift.Lift IO | r |]
        a

type TestCase r a = 
    | Test String (() -> std.effect.Eff [| writer : std.test.Test | r |] a)
    | Group String (Array (TestCase r a))

Values

let test : forall a a0 .
    String
        -> (() -> std.effect.Eff [| writer : std.test.Test | a |] a0)
        -> std.test.TestCase a a0

let group : forall a a0 . String -> Array (std.test.TestCase a a0) -> std.test.TestCase a a0

let assert x : std.types.Bool -> ()

let assert_eq l r : forall r a .
    [std.show.Show a]
        -> [std.cmp.Eq a]
        -> a
        -> a
        -> std.effect.Eff [| writer : std.test.Test | r |] ()

let assert_neq l r : forall r a .
    [std.show.Show a]
        -> [std.cmp.Eq a]
        -> a
        -> a
        -> std.effect.Eff [| writer : std.test.Test | r |] ()

let run_raw test : forall a r .
    std.effect.Eff [| writer : std.test.Test | r |] a
        -> std.effect.Eff [| | r |] (std.list.List String)

let run test : forall a r .
    std.effect.Eff [| writer : std.test.Test | r |] a
        -> std.effect.Eff [| | r |] ()

let run_io test : forall a r . std.test.TestEffIO r a -> IO ()