From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- .../browser/folder-display/browser_readMsgs.js | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 comm/mail/test/browser/folder-display/browser_readMsgs.js (limited to 'comm/mail/test/browser/folder-display/browser_readMsgs.js') diff --git a/comm/mail/test/browser/folder-display/browser_readMsgs.js b/comm/mail/test/browser/folder-display/browser_readMsgs.js new file mode 100644 index 0000000000..1f69bfbe54 --- /dev/null +++ b/comm/mail/test/browser/folder-display/browser_readMsgs.js @@ -0,0 +1,62 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +/** + * Tests various special messages. + */ + +var { PromiseTestUtils } = ChromeUtils.import( + "resource://testing-common/mailnews/PromiseTestUtils.jsm" +); +var { MailServices } = ChromeUtils.import( + "resource:///modules/MailServices.jsm" +); +var { + assert_selected_and_displayed, + be_in_folder, + create_folder, + inboxFolder, + press_delete, + select_click_row, + wait_for_message_display_completion, +} = ChromeUtils.import( + "resource://testing-common/mozmill/FolderDisplayHelpers.jsm" +); + +/** + * Tests that a message containing an invalid vcard can be displayed. + */ +add_task(async function testMarkedAsRead() { + let folder = await create_folder("SpecialMsgs"); + Services.prefs.setBoolPref("mailnews.mark_message_read.auto", true); + + let file = new FileUtils.File(getTestFilePath("data/test-invalid-vcard.eml")); + Assert.ok(file.exists(), "test data file should exist"); + let promiseCopyListener = new PromiseTestUtils.PromiseCopyListener(); + // Copy gIncomingMailFile into the Inbox. + MailServices.copy.copyFileMessage( + file, + folder, + null, + false, + 0, + "", + promiseCopyListener, + null + ); + await promiseCopyListener.promise; + await be_in_folder(folder); + let msg = select_click_row(0); + assert_selected_and_displayed(0); + // Make sure it's the msg we want. + Assert.equal(msg.subject, "this contains an invalid vcard"); + // The message should get marked as read. + await BrowserTestUtils.waitForCondition( + () => msg.isRead, + "should get marked as read" + ); + await be_in_folder(inboxFolder); + folder.deleteSelf(null); + Services.prefs.clearUserPref("mailnews.mark_message_read.auto"); +}); -- cgit v1.2.3