import 'package:aitrainer_app/model/cache.dart'; import 'package:aitrainer_app/model/customer.dart'; import 'package:aitrainer_app/service/customer_service.dart'; import 'package:flutter_test/flutter_test.dart'; //import 'package:mockito/mockito.dart'; // Create a MockClient using the Mock class provided by the Mockito package. // Create new instances of this class in each test. /* class MockClient extends Mock implements CustomerApi { Future> getTrainees(int trainerId) async { if (trainerId == 62) { List list = List(); Customer customer1 = Customer(firstname: "Zalán", name: "Boss"); Customer customer2 = Customer(firstname: "Zétény", name: "Boss"); list.add(customer1); list.add(customer2); return list; } else { throw Exception("No trainees found"); } } } */ main() { setUp(() { Cache().setTestBaseUrl(); }); group('fetchPost', () { test('returns a List if the http call completes successfully', () async { final client = CustomerApi(); // Use Mockito to return a successful response when it calls the // provided http.Client. List trainees = []; trainees = await client.getTrainees(62); expect(trainees.length, 2); expect(trainees[0].firstname, "Zalán"); }); test('throws an exception if the http call completes with an error', () async { final client = CustomerApi(); expect(client.getTrainees(22), throwsException); }); }); }