@@ -11,7 +11,7 @@ import 'package:mockito/mockito.dart' as mockito;
1111class FakeRoute <T > extends mocktail.Fake implements Route <T > {}
1212
1313/// {@template mock_navigator_provider}
14- /// The widget that provides an instance of a [MockNavigator ] .
14+ /// The widget that provides an instance of a [MockNavigatorBase ] .
1515/// {@endtemplate}
1616class MockNavigatorProvider extends Navigator {
1717 /// {@macro mock_navigator_provider}
@@ -21,8 +21,8 @@ class MockNavigatorProvider extends Navigator {
2121 required this .navigator,
2222 }) : super (key: key);
2323
24- /// The [MockNavigator] used to mock navigation calls.
25- final MockNavigator navigator;
24+ /// The mock navigator used to mock navigation calls.
25+ final MockNavigatorBase navigator;
2626
2727 /// The [Widget] to render.
2828 final Widget child;
@@ -38,23 +38,22 @@ class MockNavigatorProvider extends Navigator {
3838 }
3939}
4040
41- /// The navigator of which the behavior can be defined through using either the
42- /// [MocktailNavigator] or [MockitoNavigator] .a
43- abstract class MockNavigator implements NavigatorState {}
41+ /// The navigator of which the behavior can be defined through mocking.
42+ ///
43+ ///
44+ /// ```dart
45+ /// import 'package:mockito/mockito.dart';
46+ /// // OR
47+ /// import 'package:mocktail/mocktail.dart';
48+ ///
49+ /// class MockNavigator extends Mock
50+ /// with MockNavigatorDiagnosticsMixin
51+ /// implements MockNavigatorBase {}
52+ /// ```
53+ abstract class MockNavigatorBase implements NavigatorState {}
4454
45- /// The navigator of which the behavior can be defined through mocking using the
46- /// `mocktail` package.
47- class MocktailNavigator extends mocktail.Mock
48- with _DiagnosticStringMixin
49- implements MockNavigator {}
50-
51- /// The navigator of which the behavior can be defined through mocking using the
52- /// `mockito` package.
53- class MockitoNavigator extends mocktail.Mock
54- with _DiagnosticStringMixin
55- implements MockNavigator {}
56-
57- mixin _DiagnosticStringMixin on Object {
55+ /// A mixin necessary when implementing a [MockNavigatorBase] .
56+ mixin MockNavigatorDiagnosticsMixin on Object {
5857 @override
5958 String toString ({DiagnosticLevel minLevel = DiagnosticLevel .info}) {
6059 return super .toString ();
@@ -64,7 +63,7 @@ mixin _DiagnosticStringMixin on Object {
6463class _MockNavigatorState extends NavigatorState {
6564 _MockNavigatorState ({required this .navigator});
6665
67- MockNavigator navigator;
66+ MockNavigatorBase navigator;
6867 Widget ? child;
6968
7069 @override
0 commit comments