Bug 1042769 - Add automated test for checking that the metainfo fields are displayed in password manager. r=paolo

This commit is contained in:
Mihaela Velimiroviciu 2014-07-29 17:18:15 +03:00
Родитель 0a06eda925
Коммит e9584c378a
2 изменённых файлов: 66 добавлений и 0 удалений

Просмотреть файл

@ -1,5 +1,6 @@
[DEFAULT]
[browser_passwordmgr_fields.js]
[browser_passwordmgr_observers.js]
[browser_passwordmgr_sort.js]
[browser_passwordmgrcopypwd.js]

Просмотреть файл

@ -0,0 +1,65 @@
/* 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/. */
function test() {
waitForExplicitFinish();
let pwmgr = Cc["@mozilla.org/login-manager;1"].
getService(Ci.nsILoginManager);
pwmgr.removeAllLogins();
// add login data
let nsLoginInfo = new Components.Constructor("@mozilla.org/login-manager/loginInfo;1",
Ci.nsILoginInfo, "init");
let login = new nsLoginInfo("http://example.com/", "http://example.com/", null,
"user", "password", "u1", "p1");
pwmgr.addLogin(login);
// Open the password manager dialog
const PWMGR_DLG = "chrome://passwordmgr/content/passwordManager.xul";
let pwmgrdlg = window.openDialog(PWMGR_DLG, "Toolkit:PasswordManager", "");
SimpleTest.waitForFocus(doTest, pwmgrdlg);
function doTest() {
let doc = pwmgrdlg.document;
let signonsTree = doc.querySelector("#signonsTree");
is(signonsTree.view.rowCount, 1, "One entry in the passwords list");
is(signonsTree.view.getCellText(0, signonsTree.columns.getNamedColumn("siteCol")),
"http://example.com/",
"Correct website saved");
is(signonsTree.view.getCellText(0, signonsTree.columns.getNamedColumn("userCol")),
"user",
"Correct user saved");
let timeCreatedCol = doc.getElementById("timeCreatedCol");
is(timeCreatedCol.getAttribute("hidden"), "true",
"Time created column is not displayed");
let timeLastUsedCol = doc.getElementById("timeLastUsedCol");
is(timeLastUsedCol.getAttribute("hidden"), "",
"Last Used column is displayed");
let timePasswordChangedCol = doc.getElementById("timePasswordChangedCol");
is(timePasswordChangedCol.getAttribute("hidden"), "",
"Last Changed column is displayed");
// cleanup
Services.ww.registerNotification(function (aSubject, aTopic, aData) {
if (aSubject.location == pwmgrdlg.location && aTopic == "domwindowclosed") {
// unregister ourself
Services.ww.unregisterNotification(arguments.callee);
pwmgr.removeAllLogins();
finish();
}
});
pwmgrdlg.close();
}
}