Module Quickcheck


module Quickcheck: sig .. end
Module for easily generating unit tests. Based on code posted by padiolea@irisa.fr to the caml mailing list.

val foldn : f:('a -> int -> 'a) -> init:'a -> int -> 'a
val sum_int : int Std_internal.List.t -> int
val (==>) : bool -> bool -> bool
type 'a gen = unit -> 'a 
val fg : unit -> float
val pfg : unit -> float
val nng : unit -> int
val uig : unit -> int
val lg : (unit -> 'a) -> ?size_gen:(unit -> int) -> unit -> 'a list
val pg : (unit -> 'a) -> (unit -> 'b) -> unit -> 'a * 'b
val tg : (unit -> 'a) -> (unit -> 'b) -> (unit -> 'c) -> unit -> 'a * 'b * 'c
val cg : unit -> char
val sg : ?char_gen:(unit -> char) -> ?size_gen:(unit -> int) -> unit -> string
val oneofl : 'a Std_internal.List.container -> unit -> 'a
given a list, returns generator that picks at random from list
val oneof : 'a Std_internal.List.container -> 'a
Given a list of generators, returns generator that randomly uses one of the generators from the list
val always : 'a -> unit -> 'a
generator that always returns given value
val frequency : (int * 'a) list -> 'a
Given list of (frequency,value) pairs, returns value with probability proportional to given frequency
val frequencyl : (int * 'a) list -> unit -> 'a
like frequency, but returns generator
val laws : int -> (unit -> 'a) -> ('a -> bool) -> 'a option
laws iter gen func applies func repeatedly (iter times) on output of gen, and if func ever returns false, then the input that caused the failure is returned optionally.
val laws_exn : string -> int -> (unit -> 'a) -> ('a -> bool) -> unit
Like laws, but throws an exception instead of returning an option.
val statistic_number : 'a list -> (int * 'a) list
val statistic : 'a list -> (int * 'a) list
val laws2 : int -> ('a -> bool * 'b) -> (unit -> 'a) -> 'a option * (int * 'b) list