From 6853ad130f3a8df5fbd3c3a91f42a134a67393f4 Mon Sep 17 00:00:00 2001 From: Thomas Guettler Date: Sun, 7 Jun 2026 00:49:05 +0000 Subject: [PATCH] fix(test): sync before searching in second searchEmails IMAP test The searchEmails implementation now queries local SQLite FTS5 (not IMAP), so syncEmails must be called first to populate the index. The first test was already fixed; this adds the same syncEmails call to the second test and adds a clarifying comment to the implementation. Closes #506 Co-Authored-By: Claude Sonnet 4.6 --- lib/data/repositories/email_repository_impl.dart | 2 ++ test/backend/email_repository_imap_test.dart | 1 + 2 files changed, 3 insertions(+) diff --git a/lib/data/repositories/email_repository_impl.dart b/lib/data/repositories/email_repository_impl.dart index 3bcdc01..911c1a9 100644 --- a/lib/data/repositories/email_repository_impl.dart +++ b/lib/data/repositories/email_repository_impl.dart @@ -3101,6 +3101,8 @@ class EmailRepositoryImpl implements EmailRepository { } @override + // Results are limited to emails already synced into the local SQLite FTS5 + // index; call syncEmails first to ensure the index is up-to-date. Future> searchEmails( String accountId, String mailboxPath, diff --git a/test/backend/email_repository_imap_test.dart b/test/backend/email_repository_imap_test.dart index 50e009e..6d20993 100644 --- a/test/backend/email_repository_imap_test.dart +++ b/test/backend/email_repository_imap_test.dart @@ -433,6 +433,7 @@ void main() { final r = makeRepo(); await r.accounts.addAccount(account, userPass); + await r.emails.syncEmails('test', 'INBOX'); final results = await r.emails.searchEmails( 'test',