Module Expect_test_config

Configuration for running expect tests

To configure expect_test, add the following at the top of your .ml file, or in some

      module Expect_test_config = struct
        include Expect_test_config
        let pre_redirect_hook () = ...

Note that since all expect test are also inline tests, the inline test configuration also applies to all expect test.

module Upon_unreleasable_issue : sig ... end
module type S : sig ... end
include S with type 'a S.IO.t = 'a
module IO : sig ... end

IO monad

val flush : unit ‑> unit IO.t

Flush whatever need to be to get pending output out on file descriptor 0.

val run : (unit ‑> unit IO.t) ‑> unit

Run an IO operation until completion

val flushed : unit ‑> bool

Synchronous check that there is no pending output on file description 0. With async, there is no guarantee that on the rhs of a IO.bind (flush ()) ... the output is completely flushed, that's why we need this.

val upon_unreleasable_issue : Upon_unreleasable_issue.t

upon_unreleasable_issue specifies how to deal with output that should not be released even if it is accepted (e.g. backtraces). The default is `CR.