TestClient
struct TestClient[H: Handler]Wraps a Handler and exposes per-method synth helpers.
The handler is moved in at construction; subsequent calls
take a borrow. Two helper shapes are available per method:
a bare get(path) shape for cases where no body / no
custom headers are needed, and a request(method, path, body, headers) shape for the full surface.
Implements Movable
- Fields
handler: H
__init__
def __init__(out self, var handler: H) request
def request(self, method: String, path: String, var body: List[UInt8] = List(), var headers: HeaderMap = HeaderMap()) -> Response Synth a Request from the arguments and run it through self.handler. The peer address is fixed to 127.0.0.1:0 and expose_errors is True so handler-level errors surface in the body (a test-mode affordance; production runs default to False).
get
def get(self, path: String, var headers: HeaderMap = HeaderMap()) -> Response head
def head(self, path: String, var headers: HeaderMap = HeaderMap()) -> Response options
def options(self, path: String, var headers: HeaderMap = HeaderMap()) -> Response post
def post(self, path: String, var body: List[UInt8] = List(), var headers: HeaderMap = HeaderMap()) -> Response put
def put(self, path: String, var body: List[UInt8] = List(), var headers: HeaderMap = HeaderMap()) -> Response patch
def patch(self, path: String, var body: List[UInt8] = List(), var headers: HeaderMap = HeaderMap()) -> Response delete
def delete(self, path: String, var headers: HeaderMap = HeaderMap()) -> Response