1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
/* 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/. */
/*
* Test for the most suitable identity in From address for reply-to-list
*/
"use strict";
var { close_compose_window, open_compose_with_reply_to_list } =
ChromeUtils.import("resource://testing-common/mozmill/ComposeHelpers.jsm");
var { assert_selected_and_displayed, be_in_folder, mc, select_click_row } =
ChromeUtils.import(
"resource://testing-common/mozmill/FolderDisplayHelpers.jsm"
);
var { MailServices } = ChromeUtils.import(
"resource:///modules/MailServices.jsm"
);
var testFolder = null;
var msgHdr = null;
var replyToListWindow = null;
var identityString1 = "tinderbox_correct_identity@foo.invalid";
add_setup(function () {
addIdentitiesAndFolder();
addMessageToFolder(testFolder);
});
function addMessageToFolder(aFolder) {
var msgId = Services.uuid.generateUUID() + "@mozillamessaging.invalid";
var source =
"From - Sat Nov 1 12:39:54 2008\n" +
"X-Mozilla-Status: 0001\n" +
"X-Mozilla-Status2: 00000000\n" +
"Delivered-To: <tinderbox_identity333@foo.invalid>\n" +
"Delivered-To: <" +
identityString1 +
">\n" +
"Delivered-To: <tinderbox_identity555@foo.invalid>\n" +
"Message-ID: <" +
msgId +
">\n" +
"Date: Wed, 11 Jun 2008 20:32:02 -0400\n" +
"From: Tester <tests@mozillamessaging.invalid>\n" +
"User-Agent: Thunderbird 3.0a2pre (Macintosh/2008052122)\n" +
"MIME-Version: 1.0\n" +
"List-ID: <list.mozillamessaging.invalid>\n" +
"List-Post: <list.mozillamessaging.invalid>, \n" +
" <mailto: list@mozillamessaging.invalid>\n" +
"To: recipient@mozillamessaging.invalid\n" +
"Subject: a subject\n" +
"Content-Type: text/html; charset=ISO-8859-1\n" +
"Content-Transfer-Encoding: 7bit\n" +
"\ntext body\n";
aFolder.QueryInterface(Ci.nsIMsgLocalMailFolder);
aFolder.gettingNewMessages = true;
aFolder.addMessage(source);
aFolder.gettingNewMessages = false;
return aFolder.msgDatabase.getMsgHdrForMessageID(msgId);
}
function addIdentitiesAndFolder() {
let identity2 = MailServices.accounts.createIdentity();
// identity.fullName = "Tinderbox_Identity1";
identity2.email = "tinderbox_identity1@foo.invalid";
let identity = MailServices.accounts.createIdentity();
// identity.fullName = "Tinderbox_Identity1";
identity.email = identityString1;
let server = MailServices.accounts.createIncomingServer(
"nobody",
"Test Local Folders",
"pop3"
);
let localRoot = server.rootFolder.QueryInterface(Ci.nsIMsgLocalMailFolder);
testFolder = localRoot.createLocalSubfolder("Test Folder");
let account = MailServices.accounts.createAccount();
account.incomingServer = server;
account.addIdentity(identity);
account.addIdentity(identity2);
}
add_task(async function test_Reply_To_List_From_Address() {
await be_in_folder(testFolder);
let curMessage = select_click_row(0);
assert_selected_and_displayed(mc, curMessage);
replyToListWindow = open_compose_with_reply_to_list();
var identityList =
replyToListWindow.window.document.getElementById("msgIdentity");
// see if it's the correct identity selected
if (!identityList.selectedItem.label.includes(identityString1)) {
throw new Error(
"The From address is not correctly selected! Expected: " +
identityString1 +
"; Actual: " +
identityList.selectedItem.label
);
}
close_compose_window(replyToListWindow);
Assert.report(
false,
undefined,
undefined,
"Test ran to completion successfully"
);
});
|