Override for tests#
Replace real implementations with fakes or mocks.
final httpClientToken = provide<HttpClient>();
final apiServiceToken = provide<ApiService>((inject) =>
ApiService(inject(httpClientToken))
);
final prodContext = WiretapContext(providers: [
httpClientToken.provideOverride((_) => HttpClient()),
]);
final testContext = WiretapContext(providers: [
httpClientToken.provideOverride((_) => MockHttpClient()),
]);
test('service uses mocked client', () {
final service = testContext.inject(apiServiceToken);
// ... assertions against the mocked behavior
});
Next: Check out the experimental lifecyle api Lifecycle.