TF-4053 Verify empty widget in Inbox when perform E2E for move folder content

This commit is contained in:
dab246
2025-11-04 12:12:55 +07:00
committed by Dat H. Pham
parent a5cc102d0e
commit b34b4455cd
2 changed files with 8 additions and 15 deletions
@@ -1,7 +1,4 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:model/extensions/presentation_mailbox_extension.dart';
import 'package:model/mailbox/presentation_mailbox.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/trailing_mailbox_item_widget.dart';
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
import '../../base/base_test_scenario.dart';
@@ -32,10 +29,10 @@ class MoveFolderContentScenario extends BaseTestScenario {
await provisionEmail(listEmails);
await $.pumpAndTrySettle(duration: const Duration(seconds: 2));
await _expectEmptyViewInVisibleInInboxFolder();
await threadRobot.openMailbox();
await $.pumpAndTrySettle();
_expectInboxUnreadCountVisible();
await mailboxMenuRobot.longPressMailboxWithName(
appLocalizations.inboxMailboxDisplayName,
@@ -60,6 +57,7 @@ class MoveFolderContentScenario extends BaseTestScenario {
);
await $.pumpAndTrySettle();
await _expectEmailWithSubjectInVisible(emailSubject);
await _expectEmptyViewVisibleInInboxFolder();
}
Future<void> _expectEmailWithSubjectVisible(String subject) async {
@@ -70,14 +68,11 @@ class MoveFolderContentScenario extends BaseTestScenario {
await expectViewInvisible($(subject));
}
void _expectInboxUnreadCountVisible() {
expect(
$(TrailingMailboxItemWidget).which<TrailingMailboxItemWidget>((widget) {
final mailbox = widget.mailboxNode.item;
return mailbox.role == PresentationMailbox.roleInbox &&
mailbox.countUnreadEmails > 0;
}),
findsOneWidget,
);
Future<void> _expectEmptyViewVisibleInInboxFolder() async {
await expectViewVisible($(#empty_thread_view));
}
Future<void> _expectEmptyViewInVisibleInInboxFolder() async {
await expectViewInvisible($(#empty_thread_view));
}
}
@@ -52,8 +52,6 @@ import 'package:model/extensions/keyword_identifier_extension.dart';
import 'package:model/extensions/list_email_id_extension.dart';
import 'package:model/extensions/list_id_extension.dart';
import 'package:model/extensions/mailbox_id_extension.dart';
import 'package:model/extensions/session_extension.dart';
import 'package:model/oidc/token_oidc.dart';
import 'package:path_provider/path_provider.dart';
import 'package:tmail_ui_user/features/base/mixin/handle_error_mixin.dart';
import 'package:tmail_ui_user/features/base/mixin/mail_api_mixin.dart';