Parameter Make.1-Spec

type t

The type of the system under test

type cmd

The type of commands

val show_cmd : cmd -> string

show_cmd c returns a string representing the command c.

val gen_cmd : cmd QCheck.Gen.t

A command generator.

val shrink_cmd : cmd QCheck.Shrink.t

A command shrinker. To a first approximation you can use QCheck.Shrink.nil.

type res

The command result type

val show_res : res -> string

show_res r returns a string representing the result r.

val equal_res : res -> res -> bool

equality function over res

val init : unit -> t

Initialize the system under test.

val cleanup : t -> unit

Utility function to clean up t after each test instance, e.g., for closing sockets, files, or resetting global parameters

val run : cmd -> t -> res

run c t should interpret the command c over the system under test t (typically side-effecting).