diff --git a/lib/src/mock_navigator.dart b/lib/src/mock_navigator.dart index 36de874..1961a59 100644 --- a/lib/src/mock_navigator.dart +++ b/lib/src/mock_navigator.dart @@ -332,4 +332,9 @@ class _MockNavigatorState extends NavigatorState { arguments: arguments, ); } + + @override + void removeRouteBelow(Route anchorRoute) { + return _navigator.removeRouteBelow(anchorRoute); + } } diff --git a/test/src/mock_navigator_test.dart b/test/src/mock_navigator_test.dart index 80610ef..c9e70a0 100644 --- a/test/src/mock_navigator_test.dart +++ b/test/src/mock_navigator_test.dart @@ -453,5 +453,21 @@ void main() { ), ).called(1); }); + + testWidgets('mocks .removeRouteBelow calls', (tester) async { + when(() => navigator.removeRouteBelow(any())).thenAnswer((_) {}); + + await tester.pumpTest( + navigator: navigator, + builder: (context) => TextButton( + onPressed: () => Navigator.of(context).removeRouteBelow(testRoute), + child: const Text('Trigger'), + ), + ); + + await tester.tap(find.byType(TextButton)); + + verify(() => navigator.removeRouteBelow(testRoute)).called(1); + }); }); }