6

I am writing widget tests in Flutter. I am not able to find any documentation to execute "Go Back to Prevoius Screen" as I do not find any method for that. Please help with some sample "test" code for the same.

STeamup
  • 351
  • 1
  • 6
  • 9

1 Answers1

1

You have to mock navigation observer.

  • First create class class MockNavigatorObserver extends Mock implements NavigatorObserver

  • Declare final mockObserver = MockNavigatorObserver(); in your test file.

  • Put your widget inside MaterialApp and add property navigatorObservers: [mockObserver],

  • Finally inside your testWidgets block {} mock like this:

    final mockObserver = MockNavigatorObserver();
    final backIcon = find.byIcon(Icons.arrow_back_ios);
    expect(backIcon, findsOneWidget);
    await tester.tap(backIcon);
    verify(mockObserver.didPop(any, any));
    await tester.pumpAndSettle();
    
Quyen Anh Nguyen
  • 1,204
  • 13
  • 21