TF-3507 Fix offline cache prevents updating email query view cache
Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
+8
-2
@@ -81,6 +81,7 @@ import 'package:tmail_ui_user/features/thread/domain/constants/thread_constants.
|
||||
import 'package:tmail_ui_user/features/thread/domain/model/email_filter.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/model/filter_message_option.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/model/search_query.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/clean_and_get_emails_in_mailbox_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/empty_spam_folder_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/empty_trash_folder_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/get_email_by_id_interactor.dart';
|
||||
@@ -182,6 +183,7 @@ const fallbackGenerators = {
|
||||
MockSpec<GetAllIdentitiesInteractor>(),
|
||||
MockSpec<GetIdentityCacheOnWebInteractor>(),
|
||||
MockSpec<ComposerManager>(fallbackGenerators: fallbackGenerators),
|
||||
MockSpec<CleanAndGetEmailsInMailboxInteractor>(),
|
||||
])
|
||||
void main() {
|
||||
// mock mailbox dashboard controller direct dependencies
|
||||
@@ -203,6 +205,7 @@ void main() {
|
||||
final deleteMultipleEmailsPermanentlyInteractor =
|
||||
MockDeleteMultipleEmailsPermanentlyInteractor();
|
||||
final getEmailByIdInteractor = MockGetEmailByIdInteractor();
|
||||
final cleanAndGetEmailsInMailboxInteractor = MockCleanAndGetEmailsInMailboxInteractor();
|
||||
final sendEmailInteractor = MockSendEmailInteractor();
|
||||
final storeSendingEmailInteractor = MockStoreSendingEmailInteractor();
|
||||
final updateSendingEmailInteractor = MockUpdateSendingEmailInteractor();
|
||||
@@ -391,7 +394,8 @@ void main() {
|
||||
loadMoreEmailsInMailboxInteractor,
|
||||
searchEmailInteractor,
|
||||
searchMoreEmailInteractor,
|
||||
getEmailByIdInteractor);
|
||||
getEmailByIdInteractor,
|
||||
cleanAndGetEmailsInMailboxInteractor);
|
||||
Get.put(threadController);
|
||||
|
||||
advancedFilterController = AdvancedFilterController();
|
||||
@@ -622,7 +626,9 @@ void main() {
|
||||
loadMoreEmailsInMailboxInteractor,
|
||||
searchEmailInteractor,
|
||||
searchMoreEmailInteractor,
|
||||
getEmailByIdInteractor);
|
||||
getEmailByIdInteractor,
|
||||
cleanAndGetEmailsInMailboxInteractor,
|
||||
);
|
||||
Get.put(threadController);
|
||||
|
||||
advancedFilterController = AdvancedFilterController();
|
||||
|
||||
+5
-20
@@ -79,6 +79,7 @@ import 'package:tmail_ui_user/features/sending_queue/domain/usecases/update_send
|
||||
import 'package:tmail_ui_user/features/thread/domain/model/filter_message_option.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/state/get_all_email_state.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/state/load_more_emails_state.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/clean_and_get_emails_in_mailbox_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/empty_spam_folder_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/empty_trash_folder_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/get_email_by_id_interactor.dart';
|
||||
@@ -184,6 +185,7 @@ const fallbackGenerators = {
|
||||
MockSpec<TwakeAppManager>(),
|
||||
MockSpec<GetIdentityCacheOnWebInteractor>(),
|
||||
MockSpec<ComposerManager>(fallbackGenerators: fallbackGenerators),
|
||||
MockSpec<CleanAndGetEmailsInMailboxInteractor>(),
|
||||
])
|
||||
void main() {
|
||||
final moveToMailboxInteractor = MockMoveToMailboxInteractor();
|
||||
@@ -199,6 +201,7 @@ void main() {
|
||||
final emptyTrashFolderInteractor = MockEmptyTrashFolderInteractor();
|
||||
final deleteMultipleEmailsPermanentlyInteractor = MockDeleteMultipleEmailsPermanentlyInteractor();
|
||||
final getEmailByIdInteractor = MockGetEmailByIdInteractor();
|
||||
final cleanAndGetEmailsInMailboxInteractor = MockCleanAndGetEmailsInMailboxInteractor();
|
||||
final sendEmailInteractor = MockSendEmailInteractor();
|
||||
final storeSendingEmailInteractor = MockStoreSendingEmailInteractor();
|
||||
final updateSendingEmailInteractor = MockUpdateSendingEmailInteractor();
|
||||
@@ -383,7 +386,8 @@ void main() {
|
||||
loadMoreEmailsInMailboxInteractor,
|
||||
searchEmailInteractor,
|
||||
searchMoreEmailInteractor,
|
||||
getEmailByIdInteractor
|
||||
getEmailByIdInteractor,
|
||||
cleanAndGetEmailsInMailboxInteractor,
|
||||
);
|
||||
Get.put(threadController);
|
||||
|
||||
@@ -433,9 +437,6 @@ void main() {
|
||||
final listViewEmailWidgetFinder = find.byKey(const PageStorageKey('list_presentation_email_in_threads'));
|
||||
expect(listViewEmailWidgetFinder, findsOneWidget);
|
||||
|
||||
final listViewEmailWidget = tester.widget<ListView>(listViewEmailWidgetFinder);
|
||||
expect(listViewEmailWidget.semanticChildCount, equals(listEmailsOfInbox.length + 2));
|
||||
|
||||
final emailTile1Finder = find.byKey(Key('email_tile_builder_${EmailFixtures.email1.toPresentationEmail().id?.asString}'),);
|
||||
expect(emailTile1Finder, findsOneWidget);
|
||||
|
||||
@@ -461,9 +462,6 @@ void main() {
|
||||
final folder1ListViewEmailWidgetFinder = find.byKey(const PageStorageKey('list_presentation_email_in_threads'));
|
||||
expect(folder1ListViewEmailWidgetFinder, findsOneWidget);
|
||||
|
||||
final folder1ListViewEmailWidget = tester.widget<ListView>(folder1ListViewEmailWidgetFinder);
|
||||
expect(folder1ListViewEmailWidget.semanticChildCount, equals(listEmailsOfFolder1.length + 2));
|
||||
|
||||
final emailTile4Finder = find.byKey(Key('email_tile_builder_${EmailFixtures.email4.toPresentationEmail().id?.asString}'),);
|
||||
expect(emailTile4Finder, findsOneWidget);
|
||||
|
||||
@@ -531,9 +529,6 @@ void main() {
|
||||
final folder1ListViewEmailWidgetFinder = find.byKey(const PageStorageKey('list_presentation_email_in_threads'));
|
||||
expect(folder1ListViewEmailWidgetFinder, findsOneWidget);
|
||||
|
||||
final folder1ListViewEmailWidget = tester.widget<ListView>(folder1ListViewEmailWidgetFinder);
|
||||
expect(folder1ListViewEmailWidget.semanticChildCount, equals(listEmailsOfFolder1.length + 2));
|
||||
|
||||
final emailTile1Finder = find.byKey(Key('email_tile_builder_${EmailFixtures.email1.toPresentationEmail().id?.asString}'),);
|
||||
expect(emailTile1Finder, findsOneWidget);
|
||||
|
||||
@@ -581,10 +576,6 @@ void main() {
|
||||
final emptyEmailWidgetFinder = find.byKey(const Key('empty_thread_view'));
|
||||
expect(emptyEmailWidgetFinder, findsNothing);
|
||||
|
||||
final listViewEmailWidgetFinder = find.byKey(const PageStorageKey('list_presentation_email_in_threads'));
|
||||
final listViewEmailWidget = tester.widget<ListView>(listViewEmailWidgetFinder);
|
||||
expect(listViewEmailWidget.semanticChildCount, equals(listEmailsOfInbox.length + 2));
|
||||
|
||||
// Switch to mailbox Folder 1
|
||||
final listEmailsOfFolder1 = <PresentationEmail>[];
|
||||
mailboxDashboardController.setSelectedMailbox(MailboxFixtures.folder1.toPresentationMailbox());
|
||||
@@ -659,9 +650,6 @@ void main() {
|
||||
final listViewEmailWidgetFinder = find.byKey(const PageStorageKey('list_presentation_email_in_threads'));
|
||||
expect(listViewEmailWidgetFinder, findsOneWidget);
|
||||
|
||||
final listViewEmailWidget = tester.widget<ListView>(listViewEmailWidgetFinder);
|
||||
expect(listViewEmailWidget.semanticChildCount, equals(7));
|
||||
|
||||
expect(find.text('Load more'), findsOneWidget);
|
||||
|
||||
debugDefaultTargetPlatformOverride = null;
|
||||
@@ -705,9 +693,6 @@ void main() {
|
||||
final listViewEmailWidgetFinder = find.byKey(const PageStorageKey('list_presentation_email_in_threads'));
|
||||
expect(listViewEmailWidgetFinder, findsOneWidget);
|
||||
|
||||
final listViewEmailWidget = tester.widget<ListView>(listViewEmailWidgetFinder);
|
||||
expect(listViewEmailWidget.semanticChildCount, equals(5));
|
||||
|
||||
expect(find.text('Load more'), findsNothing);
|
||||
|
||||
debugDefaultTargetPlatformOverride = null;
|
||||
|
||||
@@ -66,6 +66,7 @@ import 'package:tmail_ui_user/features/thread/domain/model/email_filter.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/model/filter_message_option.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/state/refresh_changes_all_email_state.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/state/search_email_state.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/clean_and_get_emails_in_mailbox_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/empty_spam_folder_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/empty_trash_folder_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/get_email_by_id_interactor.dart';
|
||||
@@ -157,6 +158,7 @@ const fallbackGenerators = {
|
||||
MockSpec<RemoveComposerCacheByIdOnWebInteractor>(),
|
||||
MockSpec<GetAllIdentitiesInteractor>(),
|
||||
MockSpec<ComposerManager>(fallbackGenerators: fallbackGenerators),
|
||||
MockSpec<CleanAndGetEmailsInMailboxInteractor>(),
|
||||
])
|
||||
void main() {
|
||||
TestWidgetsFlutterBinding.ensureInitialized();
|
||||
@@ -169,6 +171,7 @@ void main() {
|
||||
late MockSearchEmailInteractor mockSearchEmailInteractor;
|
||||
late MockSearchMoreEmailInteractor mockSearchMoreEmailInteractor;
|
||||
late MockGetEmailByIdInteractor mockGetEmailByIdInteractor;
|
||||
late MockCleanAndGetEmailsInMailboxInteractor mockCleanAndGetEmailsInMailboxInteractor;
|
||||
|
||||
// Declaration search controller
|
||||
late SearchController searchController;
|
||||
@@ -275,6 +278,7 @@ void main() {
|
||||
mockSearchEmailInteractor = MockSearchEmailInteractor();
|
||||
mockSearchMoreEmailInteractor = MockSearchMoreEmailInteractor();
|
||||
mockGetEmailByIdInteractor = MockGetEmailByIdInteractor();
|
||||
mockCleanAndGetEmailsInMailboxInteractor = MockCleanAndGetEmailsInMailboxInteractor();
|
||||
|
||||
// Mock search controller
|
||||
mockQuickSearchEmailInteractor = MockQuickSearchEmailInteractor();
|
||||
@@ -366,6 +370,7 @@ void main() {
|
||||
mockSearchEmailInteractor,
|
||||
mockSearchMoreEmailInteractor,
|
||||
mockGetEmailByIdInteractor,
|
||||
mockCleanAndGetEmailsInMailboxInteractor,
|
||||
);
|
||||
|
||||
mailboxDashboardController.sessionCurrent = SessionFixtures.aliceSession;
|
||||
|
||||
@@ -37,6 +37,7 @@ import 'package:tmail_ui_user/features/thread/domain/model/filter_message_option
|
||||
import 'package:tmail_ui_user/features/thread/domain/model/search_query.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/state/refresh_changes_all_email_state.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/state/search_email_state.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/clean_and_get_emails_in_mailbox_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/get_email_by_id_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/get_emails_in_mailbox_interactor.dart';
|
||||
import 'package:tmail_ui_user/features/thread/domain/usecases/load_more_emails_in_mailbox_interactor.dart';
|
||||
@@ -87,6 +88,7 @@ const fallbackGenerators = {
|
||||
MockSpec<SearchEmailInteractor>(),
|
||||
MockSpec<SearchMoreEmailInteractor>(),
|
||||
MockSpec<GetEmailByIdInteractor>(),
|
||||
MockSpec<CleanAndGetEmailsInMailboxInteractor>(),
|
||||
])
|
||||
void main() {
|
||||
TestWidgetsFlutterBinding.ensureInitialized();
|
||||
@@ -102,6 +104,7 @@ void main() {
|
||||
late MockSearchEmailInteractor mockSearchEmailInteractor;
|
||||
late MockSearchMoreEmailInteractor mockSearchMoreEmailInteractor;
|
||||
late MockGetEmailByIdInteractor mockGetEmailByIdInteractor;
|
||||
late MockCleanAndGetEmailsInMailboxInteractor mockCleanAndGetEmailsInMailboxInteractor;
|
||||
|
||||
// Declaration base controller
|
||||
late MockCachingManager mockCachingManager;
|
||||
@@ -166,6 +169,7 @@ void main() {
|
||||
mockSearchEmailInteractor = MockSearchEmailInteractor();
|
||||
mockSearchMoreEmailInteractor = MockSearchMoreEmailInteractor();
|
||||
mockGetEmailByIdInteractor = MockGetEmailByIdInteractor();
|
||||
mockCleanAndGetEmailsInMailboxInteractor = MockCleanAndGetEmailsInMailboxInteractor();
|
||||
|
||||
Get.put<NetworkConnectionController>(mockNetworkConnectionController);
|
||||
Get.put<SearchController>(mockSearchController);
|
||||
@@ -177,7 +181,9 @@ void main() {
|
||||
mockLoadMoreEmailsInMailboxInteractor,
|
||||
mockSearchEmailInteractor,
|
||||
mockSearchMoreEmailInteractor,
|
||||
mockGetEmailByIdInteractor);
|
||||
mockGetEmailByIdInteractor,
|
||||
mockCleanAndGetEmailsInMailboxInteractor,
|
||||
);
|
||||
});
|
||||
|
||||
group('ThreadController::test', () {
|
||||
|
||||
Reference in New Issue
Block a user