RecordingClient class final
A test ApiClient that records requests and returns canned responses.
Useful for verifying that generated API clients send the correct requests without making real HTTP calls.
final client = RecordingClient();
final api = MyApi(ApiConfig(client: client));
await api.getUser(userId: '123');
expect(client.lastRequest!.method, equals('GET'));
expect(client.lastRequest!.path, equals('/users/123'));
- Implemented types
Constructors
- RecordingClient({ApiResponse? nextResponse, ApiResponse onRequest(ApiRequest request)?})
- Creates a recording client with an optional default response.
Properties
- baseUrl → Uri
-
Base URL for all requests. Must not have a trailing slash.
no setteroverride
- hashCode → int
-
The hash code for this object.
no setterinherited
- lastRequest → ApiRequest?
-
The most recently sent request, or
nullif no requests have been sent.no setter - nextResponse ↔ ApiResponse
-
The response to return for the next send call.
getter/setter pair
- nextStreamedResponse ↔ StreamedApiResponse?
-
The streaming response to return for the next sendStreaming call.
getter/setter pair
- onRequest ↔ ApiResponse Function(ApiRequest request)?
-
Optional callback to dynamically generate responses based on the request.
getter/setter pair
-
requests
→ List<
ApiRequest> -
All requests sent through this client, in order.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
close(
) → Future< void> -
Close/dispose underlying resources.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
reset(
) → void - Resets the recorded requests.
-
send(
ApiRequest request) → Future< ApiResponse> -
Send a request and return a buffered response.
override
-
sendStreaming(
ApiRequest request) → Future< StreamedApiResponse> -
Send a request and return a streaming response.
override
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
sseResponse(
List< String> jsonEvents, {int statusCode = 200, String doneSignal = '[DONE]'}) → StreamedApiResponse - Create a StreamedApiResponse that emits SSE events from JSON strings.