我一直在尝试按照Felangel 的天气教程测试我的 API 提供程序,因为它与我的代码非常相似,但我无法使其工作。
api_provider_test.dart
import 'package:stock_mobile/data/models/user.dart';
import 'package:test/test.dart';
import 'package:mocktail/mocktail.dart';
import 'package:http/http.dart' as http;
import 'package:stock_mobile/data/providers/api_provider.dart';
class MockHttpClient extends Mock implements http.Client {}
class MockResponse extends Mock implements http.Response {}
class FakeUri extends Fake implements Uri {}
void main() {
group('ApiProvider', () {
late http.Client httpClient;
late ApiProvider apiProvider;
setUpAll(() {
registerFallbackValue(FakeUri());
});
setUp(() {
httpClient = MockHttpClient();
apiProvider = ApiProvider(httpClient: httpClient);
});
group('login', () {
test('Throws ApiException non-200 response', () async {
final response = MockResponse(); …Run Code Online (Sandbox Code Playgroud)