TF-3614 E2E Search mailbox
This commit is contained in:
@@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
import 'package:core/presentation/resources/image_paths.dart';
|
import 'package:core/presentation/resources/image_paths.dart';
|
||||||
import 'package:core/presentation/views/button/tmail_button_widget.dart';
|
import 'package:core/presentation/views/button/tmail_button_widget.dart';
|
||||||
import 'package:core/presentation/views/text/text_field_builder.dart';
|
import 'package:core/presentation/views/text/text_field_builder.dart';
|
||||||
@@ -7,6 +6,7 @@ import 'package:get/get.dart';
|
|||||||
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/label_mailbox_item_widget.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/features/mailbox/presentation/widgets/mailbox_item_widget.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox_creator/presentation/mailbox_creator_view.dart';
|
import 'package:tmail_ui_user/features/mailbox_creator/presentation/mailbox_creator_view.dart';
|
||||||
|
import 'package:tmail_ui_user/features/search/mailbox/presentation/search_mailbox_view.dart';
|
||||||
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
||||||
|
|
||||||
@@ -65,6 +65,19 @@ class MailboxMenuRobot extends CoreRobot {
|
|||||||
.tap();
|
.tap();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<void> openMailboxSearch() async {
|
||||||
|
await $(TMailButtonWidget)
|
||||||
|
.which<TMailButtonWidget>((widget) {
|
||||||
|
return widget.icon == ImagePaths().icSearchBar;
|
||||||
|
})
|
||||||
|
.tap();
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<void> searchMailbox(String query) async {
|
||||||
|
await $(SearchMailboxView).$(TextFieldBuilder).enterText(query);
|
||||||
|
await $.pumpAndSettle();
|
||||||
|
}
|
||||||
|
|
||||||
Future<void> tapHideMailbox() async {
|
Future<void> tapHideMailbox() async {
|
||||||
await $(AppLocalizations().hideFolder).tap();
|
await $(AppLocalizations().hideFolder).tap();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
|
import 'package:tmail_ui_user/features/mailbox/presentation/mailbox_view.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 SearchMailboxInboxScenario extends BaseTestScenario {
|
||||||
|
const SearchMailboxInboxScenario(super.$);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<void> runTestLogic() async {
|
||||||
|
final threadRobot = ThreadRobot($);
|
||||||
|
final mailboxMenuRobot = MailboxMenuRobot($);
|
||||||
|
final appLocalizations = AppLocalizations();
|
||||||
|
|
||||||
|
await threadRobot.openMailbox();
|
||||||
|
await _expectMailboxViewVisible();
|
||||||
|
|
||||||
|
await _expectMailboxWithNameVisible(appLocalizations.inboxMailboxDisplayName);
|
||||||
|
await mailboxMenuRobot.openMailboxSearch();
|
||||||
|
await mailboxMenuRobot.searchMailbox(appLocalizations.inboxMailboxDisplayName);
|
||||||
|
await _expectMailboxWithNameVisible(appLocalizations.inboxMailboxDisplayName);
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<void> _expectMailboxViewVisible() async {
|
||||||
|
await expectViewVisible($(MailboxView));
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<void> _expectMailboxWithNameVisible(String name) async {
|
||||||
|
await expectViewVisible($(name));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import '../../base/test_base.dart';
|
||||||
|
import '../../scenarios/mailbox/search_mailbox_inbox_scenario.dart';
|
||||||
|
|
||||||
|
void main() {
|
||||||
|
TestBase().runPatrolTest(
|
||||||
|
description: 'Should see expected mailbox when searching mailboxes',
|
||||||
|
scenarioBuilder: ($) => SearchMailboxInboxScenario($),
|
||||||
|
);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user