(** Adapter process executor. *) val run : net:[> [> `Generic ] Eio.Net.ty ] Eio.Resource.t -> clock:_ Eio.Time.clock -> process_mgr:[> [> `Generic ] Eio.Process.mgr_ty ] Eio.Resource.t -> client:string -> command:string list -> ?cases:Model.case list -> ?selected_tags:string list -> ?timeout:float -> unit -> Report.t (** [run ~net ~clock ~process_mgr ~client ~command ?cases ?selected_tags ?timeout ()] is the report produced by running [command] against an ephemeral loopback server. The server base URL is appended to [command]. [cases] selects the served and reported response corpus and defaults to all cases. [selected_tags] records the filter used to produce that selection. [timeout] is the adapter process deadline in seconds and defaults to [120.0]. The function raises Invalid_argument if [command] is empty or [timeout] is not positive. *) val run_conformance : net:[> [> `Generic ] Eio.Net.ty ] Eio.Resource.t -> clock:_ Eio.Time.clock -> process_mgr:[> [> `Generic ] Eio.Process.mgr_ty ] Eio.Resource.t -> profile:Conformance.profile -> client:string -> command:string list -> ?cases:Conformance.case_info list -> ?selected_tags:string list -> ?timeout:float -> unit -> Conformance.report (** [run_conformance ~net ~clock ~process_mgr ~profile ~client ~command ?cases ?selected_tags ?timeout ()] is the report produced by running [command] against [profile]. The server base URL is appended to [command]. [cases] selects the reported profile cases and defaults to the complete profile; adapter rows for known but unselected cases are ignored. [selected_tags] records the filter used to produce that selection. [timeout] is the process deadline in seconds and defaults to [120.0]. The function raises Invalid_argument if [command] is empty or [timeout] is not positive. *)