Module Async__.Deferred_or_error_expect_test_config

include Expect_test_config_types.S with type 'a IO_flush.t = 'a Async_kernel.Deferred.Or_error.t with type 'a IO_run.t = 'a Async_kernel.Deferred.Or_error.t
module IO_run : sig ... end with type 'a t = 'a Async_kernel.Deferred.Or_error.t
module IO_flush : sig ... end with type 'a t = 'a Async_kernel.Deferred.Or_error.t
val flush : unit -> unit IO_flush.t

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

val run : (unit -> unit IO_run.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 : Expect_test_config_types__.Expect_test_config_types_intf.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.