diff --git a/integration_test/scenarios/mailbox/display_empty_view_for_favorite_folder_scenario.dart b/integration_test/scenarios/mailbox/display_empty_view_for_favorite_folder_scenario.dart new file mode 100644 index 000000000..bec2481b5 --- /dev/null +++ b/integration_test/scenarios/mailbox/display_empty_view_for_favorite_folder_scenario.dart @@ -0,0 +1,37 @@ +import 'package:flutter_test/flutter_test.dart'; +import 'package:tmail_ui_user/features/mailbox/presentation/widgets/label_mailbox_item_widget.dart'; +import 'package:tmail_ui_user/features/mailbox/presentation/widgets/mailbox_item_widget.dart'; +import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; + +import '../../base/base_test_scenario.dart'; +import '../../robots/mailbox_menu_robot.dart'; +import '../../robots/thread_robot.dart'; + +class DisplayEmptyViewForFavoriteFolderScenario extends BaseTestScenario { + const DisplayEmptyViewForFavoriteFolderScenario(super.$); + + @override + Future runTestLogic() async { + final threadRobot = ThreadRobot($); + final mailboxMenuRobot = MailboxMenuRobot($); + final appLocalizations = AppLocalizations(); + + await threadRobot.openMailbox(); + await _expectFolderVisible(appLocalizations.favoriteMailboxDisplayName); + + await mailboxMenuRobot.openFolderByName( + appLocalizations.favoriteMailboxDisplayName, + ); + await $.pumpAndTrySettle(); + await _expectEmptyViewVisible(); + } + + Future _expectFolderVisible(String folderName) { + return expectViewVisible($(MailboxItemWidget) + .$(LabelMailboxItemWidget) + .$(find.text(folderName))); + } + + Future _expectEmptyViewVisible() => + expectViewVisible($(#empty_thread_view)); +} diff --git a/integration_test/tests/mailbox/display_empty_view_for_favorite_folder_test.dart b/integration_test/tests/mailbox/display_empty_view_for_favorite_folder_test.dart new file mode 100644 index 000000000..11d4a9376 --- /dev/null +++ b/integration_test/tests/mailbox/display_empty_view_for_favorite_folder_test.dart @@ -0,0 +1,9 @@ +import '../../base/test_base.dart'; +import '../../scenarios/mailbox/display_empty_view_for_favorite_folder_scenario.dart'; + +void main() { + TestBase().runPatrolTest( + description: 'Should display empty view when no mail favorites', + scenarioBuilder: ($) => DisplayEmptyViewForFavoriteFolderScenario($), + ); +}