--- a/toolkit/components/passwordmgr/.eslintrc
+++ b/toolkit/components/passwordmgr/.eslintrc
@@ -13,10 +13,13 @@
// Commas at the end of the line not the start
"comma-style": 2,
// No using undeclared variables
"no-undef": 2,
// Don't allow unused local variables unless they match the pattern
"no-unused-vars": [2, {"args": "none", "vars": "local", "varsIgnorePattern": "^(ids|ignored|unused)$"}],
+
+ // Always require semicolon at end of statement
+ "semi": [2, "always"],
}
}
--- a/toolkit/components/passwordmgr/LoginImport.jsm
+++ b/toolkit/components/passwordmgr/LoginImport.jsm
@@ -43,17 +43,17 @@ XPCOMUtils.defineLazyModuleGetter(this,
* @param aStore
* LoginStore object where imported data will be added.
* @param aPath
* String containing the file path of the SQLite login database.
*/
this.LoginImport = function (aStore, aPath) {
this.store = aStore;
this.path = aPath;
-}
+};
this.LoginImport.prototype = {
/**
* LoginStore object where imported data will be added.
*/
store: null,
/**
--- a/toolkit/components/passwordmgr/LoginStore.jsm
+++ b/toolkit/components/passwordmgr/LoginStore.jsm
@@ -75,17 +75,17 @@ Cu.import("resource://gre/modules/Servic
XPCOMUtils.defineLazyModuleGetter(this, "AsyncShutdown",
"resource://gre/modules/AsyncShutdown.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "DeferredTask",
"resource://gre/modules/DeferredTask.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "FileUtils",
"resource://gre/modules/FileUtils.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "OS",
- "resource://gre/modules/osfile.jsm")
+ "resource://gre/modules/osfile.jsm");
XPCOMUtils.defineLazyGetter(this, "gTextDecoder", function () {
return new TextDecoder();
});
XPCOMUtils.defineLazyGetter(this, "gTextEncoder", function () {
return new TextEncoder();
});
@@ -214,17 +214,17 @@ LoginStore.prototype = {
if (this.dataReady) {
return;
}
try {
// This reads the file and automatically detects the UTF-8 encoding.
let inputStream = new FileInputStream(new FileUtils.File(this.path),
FileUtils.MODE_RDONLY,
- FileUtils.PERMS_FILE, 0)
+ FileUtils.PERMS_FILE, 0);
try {
let json = Cc["@mozilla.org/dom/json;1"].createInstance(Ci.nsIJSON);
this.data = json.decodeFromStream(inputStream,
inputStream.available());
} finally {
inputStream.close();
}
} catch (ex) {
--- a/toolkit/components/passwordmgr/OSCrypto_win.js
+++ b/toolkit/components/passwordmgr/OSCrypto_win.js
@@ -17,17 +17,17 @@ const wintypes = {
BOOL: ctypes.bool,
BYTE: ctypes.uint8_t,
DWORD: ctypes.uint32_t,
PBYTE: ctypes.unsigned_char.ptr,
PCHAR: ctypes.char.ptr,
PDWORD: ctypes.uint32_t.ptr,
PVOID: ctypes.voidptr_t,
WORD: ctypes.uint16_t,
-}
+};
function OSCrypto() {
this._structs = {};
this._functions = new Map();
this._libs = new Map();
this._structs.DATA_BLOB = new ctypes.StructType("DATA_BLOB",
[
{cbData: wintypes.DWORD},
--- a/toolkit/components/passwordmgr/content/passwordManager.js
+++ b/toolkit/components/passwordmgr/content/passwordManager.js
@@ -51,17 +51,17 @@ let signonReloadDisplay = {
if (filterField && filterField.value != "") {
FilterPasswords();
}
break;
}
Services.obs.notifyObservers(null, "passwordmgr-dialog-updated", null);
}
}
-}
+};
// Formatter for localization.
let dateFormatter = new Intl.DateTimeFormat(undefined,
{ day: "numeric", month: "short", year: "numeric" });
let dateAndTimeFormatter = new Intl.DateTimeFormat(undefined,
{ day: "numeric", month: "short", year: "numeric",
hour: "numeric", minute: "numeric" });
--- a/toolkit/components/passwordmgr/test/browser/browser_capture_doorhanger.js
+++ b/toolkit/components/passwordmgr/test/browser/browser_capture_doorhanger.js
@@ -563,17 +563,17 @@ add_task(function* test_noShowPasswordOn
let notif = getCaptureDoorhanger("password-save");
let { panel } = PopupNotifications;
info("Hiding popup.");
let promiseHidden = BrowserTestUtils.waitForEvent(panel, "popuphidden");
panel.hidePopup();
yield promiseHidden;
- info("Clicking on anchor to reshow popup.")
+ info("Clicking on anchor to reshow popup.");
let promiseShown = BrowserTestUtils.waitForEvent(panel, "popupshown");
notif.anchorElement.click();
yield promiseShown;
let passwordVisiblityToggle = panel.querySelector("#password-notification-visibilityToggle");
is(passwordVisiblityToggle.hidden, true, "Check that the Show Password field is Hidden");
});
});
--- a/toolkit/components/passwordmgr/test/browser/browser_passwordmgr_switchtab.js
+++ b/toolkit/components/passwordmgr/test/browser/browser_passwordmgr_switchtab.js
@@ -16,27 +16,27 @@ function test() {
var domwindow = window.QueryInterface(Ci.nsIInterfaceRequestor)
.getInterface(Ci.nsIDOMWindow);
waitForFocus(() => {
is(domwindow.document.location.href, PROMPT_URL, "Should have seen a prompt window");
is(domwindow.args.promptType, "promptUserAndPass", "Should be an authenticate prompt");
is(gBrowser.selectedTab, tab, "Should have selected the new tab");
- domwindow.document.documentElement.cancelDialog()
+ domwindow.document.documentElement.cancelDialog();
}, domwindow);
},
onCloseWindow: function() {
}
- }
+ };
Services.wm.addListener(listener);
registerCleanupFunction(() => {
Services.wm.removeListener(listener);
gBrowser.removeTab(tab);
- })
+ });
tab.linkedBrowser.addEventListener("load", () => {
finish();
}, true);
tab.linkedBrowser.loadURI("http://example.com/browser/toolkit/components/passwordmgr/test/browser/authenticate.sjs");
}
--- a/toolkit/components/passwordmgr/test/mochitest/test_autofill_https_upgrade.html
+++ b/toolkit/components/passwordmgr/test/mochitest/test_autofill_https_upgrade.html
@@ -53,17 +53,17 @@ function* prepareLoginsAndProcessForm(ur
}
iframe.src = url;
yield promiseFormsProcessed();
}
add_task(function* setup() {
yield SpecialPowers.pushPrefEnv({"set": [["signon.schemeUpgrades", true]]});
-})
+});
add_task(function* test_simpleNoDupesNoAction() {
yield prepareLoginsAndProcessForm("https://example.com" + MISSING_ACTION_PATH, [
new nsLoginInfo("http://example.com", "http://example.com", null,
"name2", "pass2", "uname", "pword"),
]);
checkACForm("name2", "pass2");
--- a/toolkit/components/passwordmgr/test/mochitest/test_basic_form_2pw_2.html
+++ b/toolkit/components/passwordmgr/test/mochitest/test_basic_form_2pw_2.html
@@ -81,17 +81,17 @@ function getFormSubmitButton(formNum) {
// invoke the form onsubmit handler.
var button = form.firstChild;
while (button && button.type != "submit") { button = button.nextSibling; }
ok(button != null, "getting form submit button");
return button;
}
-runChecksAfterCommonInit(startTest)
+runChecksAfterCommonInit(startTest);
</script>
</pre>
<div id="content" style="display: none">
<form id="form1" onsubmit="return checkSubmit(1)" action="http://newuser.com">
<input type="text" name="uname">
<input type="password" name="pword">
<input type="password" name="qword">
--- a/toolkit/components/passwordmgr/test/mochitest/test_bug_627616.html
+++ b/toolkit/components/passwordmgr/test/mochitest/test_bug_627616.html
@@ -22,17 +22,17 @@
"user=user1name&" +
"pass=user1pass&" +
"realm=mochirealm&" +
extra || "");
xhr.onloadend = function() {
is(xhr.status, expectedStatus, "xhr.status");
is(xhr.statusText, expectedText, "xhr.statusText");
runNextTest();
- }
+ };
return xhr;
}
function testNonAnonymousCredentials() {
var xhr = makeXHR(200, "OK");
xhr.send();
}
--- a/toolkit/components/passwordmgr/test/mochitest/test_bug_776171.html
+++ b/toolkit/components/passwordmgr/test/mochitest/test_bug_776171.html
@@ -31,21 +31,21 @@ function doxhr(URL, user, pass, next) {
var xhr = new XMLHttpRequest();
if (user && pass)
xhr.open("POST", URL, true, user, pass);
else
xhr.open("POST", URL, true);
xhr.onload = function() {
is(xhr.status, 200, "Got status 200");
next();
- }
+ };
xhr.onerror = function() {
ok(false, "request passed");
finishTest();
- }
+ };
xhr.send();
}
function startTest() {
doxhr("auth2/authenticate.sjs?user=user1&pass=pass1&realm=realm1", "user1", "pass1", function() {
doxhr("auth2", null, null, function() {
doxhr("authenticate.sjs?user=user1&pass=pass1&realm=realm1", "user1", "pass1", SimpleTest.finish);
});
--- a/toolkit/components/passwordmgr/test/mochitest/test_prompt_promptAuth_proxy.html
+++ b/toolkit/components/passwordmgr/test/mochitest/test_prompt_promptAuth_proxy.html
@@ -81,17 +81,17 @@ proxyChannelListener.prototype = {
},
onStopRequest: function(request, context, status) { }
};
var resolveCallback = SpecialPowers.wrapCallbackObject({
QueryInterface : function (iid) {
const interfaces = [Ci.nsIProtocolProxyCallback, Ci.nsISupports];
- if (!interfaces.some( function(v) { return iid.equals(v) } ))
+ if (!interfaces.some( function(v) { return iid.equals(v); } ))
throw SpecialPowers.Cr.NS_ERROR_NO_INTERFACE;
return this;
},
onProxyAvailable : function (req, uri, pi, status) {
initLogins(pi);
// I'm cheating a bit here... We should probably do some magic foo to get
@@ -132,17 +132,17 @@ function startup() {
pps.asyncResolve(channel, 0, resolveCallback);
}
startup();
add_task(function* setup() {
info("Waiting for startup to complete...");
yield startupComplete;
-})
+});
add_task(function* test_noAutologin() {
// test proxy login (default = no autologin), make sure it prompts.
state = {
msg : "The proxy moz-proxy://127.0.0.1:8888 is requesting a username and password.\n\nThe site says: “Proxy Realm”",
title : "Authentication Required",
textValue : "proxuser",
passValue : "proxpass",
--- a/toolkit/components/passwordmgr/test/mochitest/test_xhr_2.html
+++ b/toolkit/components/passwordmgr/test/mochitest/test_xhr_2.html
@@ -27,21 +27,21 @@ function doxhr(URL, user, pass, code, ne
var xhr = new XMLHttpRequest();
if (user && pass)
xhr.open("POST", URL, true, user, pass);
else
xhr.open("POST", URL, true);
xhr.onload = function() {
is(xhr.status, code, "expected response code " + code);
next();
- }
+ };
xhr.onerror = function() {
ok(false, "request passed");
finishTest();
- }
+ };
xhr.send();
}
function startTest() {
doxhr("authenticate.sjs?user=dummy&pass=pass1&realm=realm1&formauth=1", "dummy", "dummy", 403, function() {
doxhr("authenticate.sjs?user=dummy&pass=pass1&realm=realm1&formauth=1", "dummy", "pass1", 200, finishTest);
});
}
--- a/toolkit/components/passwordmgr/test/prompt_common.js
+++ b/toolkit/components/passwordmgr/test/prompt_common.js
@@ -25,17 +25,17 @@ function startCallbackTimer() {
}
var observer = SpecialPowers.wrapCallbackObject({
QueryInterface : function (iid) {
const interfaces = [Ci.nsIObserver,
Ci.nsISupports, Ci.nsISupportsWeakReference];
- if (!interfaces.some( function(v) { return iid.equals(v) } ))
+ if (!interfaces.some( function(v) { return iid.equals(v); } ))
throw SpecialPowers.Components.results.NS_ERROR_NO_INTERFACE;
return this;
},
observe : function (subject, topic, data) {
var doc = getDialogDoc();
if (doc)
handleDialog(doc, testNum);
--- a/toolkit/components/passwordmgr/test/test_prompt_async.html
+++ b/toolkit/components/passwordmgr/test/test_prompt_async.html
@@ -37,17 +37,17 @@
*/
dialogMonitor.prototype = SpecialPowers.wrapCallbackObject({
windowsOpen : 0,
windowsRegistered : 0,
QueryInterface : function (iid) {
const interfaces = [Ci.nsIObserver, Ci.nsISupports];
- if (!interfaces.some( function(v) { return iid.equals(v) } ))
+ if (!interfaces.some( function(v) { return iid.equals(v); } ))
throw SpecialPowers.Cr.NS_ERROR_NO_INTERFACE;
return this;
},
observe: function(subject, topic, data) {
if (topic === "domwindowopened") {
this.windowsOpen++;
this.windowsRegistered++;
@@ -128,17 +128,17 @@
monitor.shutdown();
SimpleTest.finish();
}
var resolveCallback = SpecialPowers.wrapCallbackObject({
QueryInterface : function (iid) {
const interfaces = [Ci.nsIProtocolProxyCallback, Ci.nsISupports];
- if (!interfaces.some( function(v) { return iid.equals(v) } ))
+ if (!interfaces.some( function(v) { return iid.equals(v); } ))
throw SpecialPowers.Cr.NS_ERROR_NO_INTERFACE;
return this;
},
onProxyAvailable : function (req, uri, pi, status) {
initLogins(pi);
doTest(testNum);
}
@@ -166,17 +166,17 @@
iframe1 = document.getElementById("iframe1");
iframe2a = document.getElementById("iframe2a");
iframe2b = document.getElementById("iframe2b");
iframe1.onload = onFrameLoad;
iframe2a.onload = onFrameLoad;
iframe2b.onload = onFrameLoad;
startup();
- }
+ };
var expectedLoads;
var expectedDialogs;
function onFrameLoad()
{
if (--expectedLoads == 0) {
// All pages expected to load has loaded, continue with the next test
ok(true, "Expected frames loaded");
--- a/toolkit/components/passwordmgr/test/unit/test_OSCrypto_win.js
+++ b/toolkit/components/passwordmgr/test/unit/test_OSCrypto_win.js
@@ -64,14 +64,14 @@ add_task(function test_decryptData_encry
let keys = [null, "a", "keys", "abcdedf", "pass", "https://bugzilla.mozilla.org/page.cgi",
"https://login.live.com/login.srf"];
for (let key of keys) {
decryptEncryptTest(key);
}
let url = "https://twitter.com/";
let value = [1, 0, 0, 0, 208, 140, 157, 223, 1, 21, 209, 17, 140, 122, 0, 192, 79, 194, 151, 235, 1, 0, 0, 0, 254, 58, 230, 75, 132, 228, 181, 79, 184, 160, 37, 106, 201, 29, 42, 152, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 16, 102, 0, 0, 0, 1, 0, 0, 32, 0, 0, 0, 90, 136, 17, 124, 122, 57, 178, 24, 34, 86, 209, 198, 184, 107, 58, 58, 32, 98, 61, 239, 129, 101, 56, 239, 114, 159, 139, 165, 183, 40, 183, 85, 0, 0, 0, 0, 14, 128, 0, 0, 0, 2, 0, 0, 32, 0, 0, 0, 147, 170, 34, 21, 53, 227, 191, 6, 201, 84, 106, 31, 57, 227, 46, 127, 219, 199, 80, 142, 37, 104, 112, 223, 26, 165, 223, 55, 176, 89, 55, 37, 112, 0, 0, 0, 98, 70, 221, 109, 5, 152, 46, 11, 190, 213, 226, 58, 244, 20, 180, 217, 63, 155, 227, 132, 7, 151, 235, 6, 37, 232, 176, 182, 141, 191, 251, 50, 20, 123, 53, 11, 247, 233, 112, 121, 130, 27, 168, 68, 92, 144, 192, 7, 12, 239, 53, 217, 253, 155, 54, 109, 236, 216, 225, 245, 79, 234, 165, 225, 104, 36, 77, 13, 195, 237, 143, 165, 100, 107, 230, 70, 54, 19, 179, 35, 8, 101, 93, 202, 121, 210, 222, 28, 93, 122, 36, 84, 185, 249, 238, 3, 102, 149, 248, 94, 137, 16, 192, 22, 251, 220, 22, 223, 16, 58, 104, 187, 64, 0, 0, 0, 70, 72, 15, 119, 144, 66, 117, 203, 190, 82, 131, 46, 111, 130, 238, 191, 170, 63, 186, 117, 46, 88, 171, 3, 94, 146, 75, 86, 243, 159, 63, 195, 149, 25, 105, 141, 42, 217, 108, 18, 63, 62, 98, 182, 241, 195, 12, 216, 152, 230, 176, 253, 202, 129, 41, 185, 135, 111, 226, 92, 27, 78, 27, 198];
- let arr1 = crypto.arrayToString(value)
+ let arr1 = crypto.arrayToString(value);
let arr2 = crypto.stringToArray(crypto.decryptData(crypto.encryptData(arr1, url), url));
for (let i = 0; i < arr1.length; i++) {
do_check_eq(arr2[i], value[i]);
}
});
--- a/toolkit/components/passwordmgr/test/unit/test_logins_search.js
+++ b/toolkit/components/passwordmgr/test/unit/test_logins_search.js
@@ -80,17 +80,17 @@ function checkAllSearches(aQuery, aExpec
// Test findLogins.
let outCount = {};
let logins = Services.logins.findLogins(outCount, hostname, formSubmitURL,
httpRealm);
do_check_eq(outCount.value, expectedLogins.length);
LoginTestUtils.assertLoginListsEqual(logins, expectedLogins);
// Test countLogins.
- let count = Services.logins.countLogins(hostname, formSubmitURL, httpRealm)
+ let count = Services.logins.countLogins(hostname, formSubmitURL, httpRealm);
do_check_eq(count, expectedLogins.length);
// Test searchLogins.
checkSearchLogins(aQuery, aExpectedCount);
}
////////////////////////////////////////////////////////////////////////////////
//// Tests
--- a/toolkit/components/passwordmgr/test/unit/test_notifications.js
+++ b/toolkit/components/passwordmgr/test/unit/test_notifications.js
@@ -62,17 +62,17 @@ var testuser1 = new LoginInfo("http://te
var testuser2 = new LoginInfo("http://testhost2", "", null,
"dummydude2", "itsasecret2", "put_user2_here", "put_pw2_here");
Services.obs.addObserver(TestObserver, "passwordmgr-storage-changed", false);
/* ========== 1 ========== */
testnum = 1;
-testdesc = "Initial connection to storage module"
+testdesc = "Initial connection to storage module";
/* ========== 2 ========== */
testnum++;
testdesc = "addLogin";
expectedNotification = "addLogin";
expectedData = testuser1;
Services.logins.addLogin(testuser1);
--- a/toolkit/components/passwordmgr/test/unit/test_storage_mozStorage.js
+++ b/toolkit/components/passwordmgr/test/unit/test_storage_mozStorage.js
@@ -151,17 +151,17 @@ testuser4.init("http://test.gov", "http:
"testuser1", "testpass2", "u4", "p4");
var testuser5 = new nsLoginInfo;
testuser5.init("http://test.gov", "http://test.gov", null,
"testuser2", "testpass1", "u5", "p5");
/* ========== 1 ========== */
testnum++;
-testdesc = "Test downgrade from v999 storage"
+testdesc = "Test downgrade from v999 storage";
yield* copyFile("signons-v999.sqlite");
// Verify the schema version in the test file.
dbConnection = openDB("signons-v999.sqlite");
do_check_eq(999, dbConnection.schemaVersion);
dbConnection.close();
storage = reloadStorage(OUTDIR, "signons-v999.sqlite");
@@ -172,17 +172,17 @@ checkStorageData(storage, ["https://disa
dbConnection = openDB("signons-v999.sqlite");
do_check_eq(CURRENT_SCHEMA, dbConnection.schemaVersion);
dbConnection.close();
deleteFile(OUTDIR, "signons-v999.sqlite");
/* ========== 2 ========== */
testnum++;
-testdesc = "Test downgrade from incompat v999 storage"
+testdesc = "Test downgrade from incompat v999 storage";
// This file has a testuser999/testpass999, but is missing an expected column
var origFile = OS.Path.join(OUTDIR, "signons-v999-2.sqlite");
var failFile = OS.Path.join(OUTDIR, "signons-v999-2.sqlite.corrupt");
// Make sure we always start clean in a clean state.
yield* copyFile("signons-v999-2.sqlite");
yield OS.File.remove(failFile);
@@ -193,17 +193,17 @@ Assert.throws(() => reloadStorage(OUTDIR
// Check to ensure the DB file was renamed to .corrupt.
do_check_false(yield OS.File.exists(origFile));
do_check_true(yield OS.File.exists(failFile));
yield OS.File.remove(failFile);
/* ========== 3 ========== */
testnum++;
-testdesc = "Test upgrade from v1->v2 storage"
+testdesc = "Test upgrade from v1->v2 storage";
yield* copyFile("signons-v1.sqlite");
// Sanity check the test file.
dbConnection = openDB("signons-v1.sqlite");
do_check_eq(1, dbConnection.schemaVersion);
dbConnection.close();
storage = reloadStorage(OUTDIR, "signons-v1.sqlite");
@@ -252,17 +252,17 @@ do_check_eq("{13d9bfdc-572a-4d4e-9436-68
guid = getGUIDforID(dbConnection, 3);
do_check_true(isGUID.test(guid));
dbConnection.close();
deleteFile(OUTDIR, "signons-v1v2.sqlite");
/* ========== 5 ========== */
testnum++;
-testdesc = "Test upgrade from v2->v3 storage"
+testdesc = "Test upgrade from v2->v3 storage";
yield* copyFile("signons-v2.sqlite");
// Sanity check the test file.
dbConnection = openDB("signons-v2.sqlite");
do_check_eq(2, dbConnection.schemaVersion);
storage = reloadStorage(OUTDIR, "signons-v2.sqlite");
@@ -312,17 +312,17 @@ for (let i = 0; i < encTypes.length; i++
do_check_eq(encTypes[i], getEncTypeForID(dbConnection, i + 1));
dbConnection.close();
deleteFile(OUTDIR, "signons-v2v3.sqlite");
/* ========== 7 ========== */
testnum++;
-testdesc = "Test upgrade from v3->v4 storage"
+testdesc = "Test upgrade from v3->v4 storage";
yield* copyFile("signons-v3.sqlite");
// Sanity check the test file.
dbConnection = openDB("signons-v3.sqlite");
do_check_eq(3, dbConnection.schemaVersion);
storage = reloadStorage(OUTDIR, "signons-v3.sqlite");
do_check_eq(CURRENT_SCHEMA, dbConnection.schemaVersion);
@@ -339,17 +339,17 @@ for (var i = 0; i < 2; i++) {
do_check_eq(1, logins[i].timesUsed);
LoginTestUtils.assertTimeIsAboutNow(logins[i].timeCreated);
LoginTestUtils.assertTimeIsAboutNow(logins[i].timeLastUsed);
LoginTestUtils.assertTimeIsAboutNow(logins[i].timePasswordChanged);
}
/* ========== 8 ========== */
testnum++;
-testdesc = "Test upgrade from v3->v4->v3 storage"
+testdesc = "Test upgrade from v3->v4->v3 storage";
yield* copyFile("signons-v3v4.sqlite");
// Sanity check the test file.
dbConnection = openDB("signons-v3v4.sqlite");
do_check_eq(3, dbConnection.schemaVersion);
storage = reloadStorage(OUTDIR, "signons-v3v4.sqlite");
do_check_eq(CURRENT_SCHEMA, dbConnection.schemaVersion);
@@ -379,32 +379,32 @@ do_check_eq(1262049951275, t1.timePasswo
do_check_eq(1, t2.timesUsed);
LoginTestUtils.assertTimeIsAboutNow(t2.timeCreated);
LoginTestUtils.assertTimeIsAboutNow(t2.timeLastUsed);
LoginTestUtils.assertTimeIsAboutNow(t2.timePasswordChanged);
/* ========== 9 ========== */
testnum++;
-testdesc = "Test upgrade from v4 storage"
+testdesc = "Test upgrade from v4 storage";
yield* copyFile("signons-v4.sqlite");
// Sanity check the test file.
dbConnection = openDB("signons-v4.sqlite");
do_check_eq(4, dbConnection.schemaVersion);
do_check_false(dbConnection.tableExists("moz_deleted_logins"));
storage = reloadStorage(OUTDIR, "signons-v4.sqlite");
do_check_eq(CURRENT_SCHEMA, dbConnection.schemaVersion);
do_check_true(dbConnection.tableExists("moz_deleted_logins"));
/* ========== 10 ========== */
testnum++;
-testdesc = "Test upgrade from v4->v5->v4 storage"
+testdesc = "Test upgrade from v4->v5->v4 storage";
yield copyFile("signons-v4v5.sqlite");
// Sanity check the test file.
dbConnection = openDB("signons-v4v5.sqlite");
do_check_eq(4, dbConnection.schemaVersion);
do_check_true(dbConnection.tableExists("moz_deleted_logins"));
storage = reloadStorage(OUTDIR, "signons-v4v5.sqlite");
@@ -446,32 +446,32 @@ LoginTestUtils.assertDisabledHostsEqual(
// Remove all disabled hosts from the permission manager before test ends
for (let host of disabledHosts) {
setLoginSavingEnabled(host, true);
}
/* ========== 12 ========== */
testnum++;
-testdesc = "Create nsILoginInfo instances for testing with"
+testdesc = "Create nsILoginInfo instances for testing with";
testuser1 = new nsLoginInfo;
testuser1.init("http://dummyhost.mozilla.org", "", null,
"dummydude", "itsasecret", "put_user_here", "put_pw_here");
/*
* ---------------------- DB Corruption ----------------------
* Try to initialize with a corrupt database file. This should create a backup
* file, then upon next use create a new database file.
*/
/* ========== 13 ========== */
testnum++;
-testdesc = "Corrupt database and backup"
+testdesc = "Corrupt database and backup";
const filename = "signons-c.sqlite";
const filepath = OS.Path.join(OS.Constants.Path.profileDir, filename);
yield OS.File.copy(do_get_file("data/corruptDB.sqlite").path, filepath);
// will init mozStorage module with corrupt database, init should fail
Assert.throws(