Module Alg_structs_qcheck__.Applicative

module Alg = Alg_structs
module type S = sig ... end

The Alg.Applicative.S interface extended with a way of generating arbitrary QCheck values for S.t.

val test : (module S) -> QCheck.Test.t list

test (module A) is a list of QCheck property based tests that checks whether the Applicative Laws hold for the given implementation A.

val tests : (module S) list -> QCheck.Test.t list

test implementations is a flattened list of tests generated for each implementation in implementations