@@ -5,41 +5,35 @@ import 'package:flutter_test/flutter_test.dart';
55import 'package:mocktail/mocktail.dart' ;
66import 'package:pnyws/app.dart' ;
77import 'package:pnyws/data/data.dart' ;
8- import 'package:pnyws/environments/environment.dart' ;
98import 'package:pnyws/registry.dart' ;
109import 'package:pnyws/screens/splash/splash_page.dart' ;
1110import 'package:pnyws/services/services.dart' ;
1211import 'package:shared_preferences/shared_preferences.dart' ;
1312
14- class MockNavigatorObserver extends Mock implements NavigatorObserver {}
15-
16- class MockSharedPreferences extends Mock implements SharedPreferences {}
17-
18- class MockAuthRepository extends Mock implements AuthRepository {}
19-
20- class MockTripRepository extends Mock implements TripRepository {}
21-
2213void main () {
2314 group ('Smoke test' , () {
2415 late NavigatorObserver mockObserver;
2516
2617 setUpAll (() {
27- mockObserver = MockNavigatorObserver ();
18+ mockObserver = _MockNavigatorObserver ();
19+ registerFallbackValue (MaterialPageRoute <dynamic >(builder: (context) => const SizedBox ()));
2820 });
2921
3022 testWidgets ('shows and navigates out of SplashPage' , (WidgetTester tester) async {
3123 final completer = Completer <Map <String , int >>();
3224
33- final authRepository = MockAuthRepository ();
34- when (() => authRepository.onAuthStateChanged).thenAnswer ((_) async * {
35- yield '1' ;
36- });
25+ final authRepository = _MockAuthRepository ();
26+ final tripRepository = _MockTripRepository ();
27+
28+ when (authRepository.signOut).thenAnswer ((_) async {});
29+ when (() => authRepository.onAuthStateChanged).thenAnswer ((_) => .value ('1' ));
30+ when (tripRepository.getActiveTrip).thenAnswer ((_) => .value (TripData (title: 'Test Trip' )).asBroadcastStream ());
3731
3832 const registry = Registry ();
39- final session = Session (environment: Environment .mock);
33+ final session = Session (environment: .mock);
4034 final navigatorKey = GlobalKey <NavigatorState >();
41- final sharedPrefs = SharedPrefs (MockSharedPreferences ());
42- final repository = Repository (auth: authRepository, trip: MockTripRepository () );
35+ final sharedPrefs = SharedPrefs (_MockSharedPreferences ());
36+ final repository = Repository (auth: authRepository, trip: tripRepository );
4337 registry.initialize (repository, session, navigatorKey, '1.0.0' , sharedPrefs);
4438
4539 await tester.pumpWidget (App (navigatorKey: navigatorKey, isFirstTime: false , navigatorObservers: [mockObserver]));
@@ -59,3 +53,11 @@ void main() {
5953 });
6054 });
6155}
56+
57+ class _MockNavigatorObserver extends Mock implements NavigatorObserver {}
58+
59+ class _MockSharedPreferences extends Mock implements SharedPreferences {}
60+
61+ class _MockAuthRepository extends Mock implements AuthRepository {}
62+
63+ class _MockTripRepository extends Mock implements TripRepository {}
0 commit comments