summaryrefslogtreecommitdiffstats
path: root/toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2020-02-25 15:07:00 -0500
committerMatt A. Tobin <email@mattatobin.com>2020-02-25 15:07:00 -0500
commit0ddd00f1959c78ce37c14fef3c83401408fca3bf (patch)
treed408e02767c86cf8aac3acbb86722b03c77ede6f /toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js
parent20f0905b33cbb18d1caa80c55e2f552c2e18957b (diff)
downloadUXP-0ddd00f1959c78ce37c14fef3c83401408fca3bf.tar
UXP-0ddd00f1959c78ce37c14fef3c83401408fca3bf.tar.gz
UXP-0ddd00f1959c78ce37c14fef3c83401408fca3bf.tar.lz
UXP-0ddd00f1959c78ce37c14fef3c83401408fca3bf.tar.xz
UXP-0ddd00f1959c78ce37c14fef3c83401408fca3bf.zip
Issue #439 - Remove tests from toolkit/
Diffstat (limited to 'toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js')
-rw-r--r--toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js206
1 files changed, 0 insertions, 206 deletions
diff --git a/toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js b/toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js
deleted file mode 100644
index 335eb601b..000000000
--- a/toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js
+++ /dev/null
@@ -1,206 +0,0 @@
-/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-/* vim: set ts=2 et sw=2 tw=80: */
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/**
- * Tests the LoginStore object.
- */
-
-"use strict";
-
-// Globals
-
-XPCOMUtils.defineLazyModuleGetter(this, "LoginStore",
- "resource://gre/modules/LoginStore.jsm");
-
-const TEST_STORE_FILE_NAME = "test-logins.json";
-
-// Tests
-
-/**
- * Saves login data to a file, then reloads it.
- */
-add_task(function* test_save_reload()
-{
- let storeForSave = new LoginStore(getTempFile(TEST_STORE_FILE_NAME).path);
-
- // The "load" method must be called before preparing the data to be saved.
- yield storeForSave.load();
-
- let rawLoginData = {
- id: storeForSave.data.nextId++,
- hostname: "http://www.example.com",
- httpRealm: null,
- formSubmitURL: "http://www.example.com/submit-url",
- usernameField: "field_" + String.fromCharCode(533, 537, 7570, 345),
- passwordField: "field_" + String.fromCharCode(421, 259, 349, 537),
- encryptedUsername: "(test)",
- encryptedPassword: "(test)",
- guid: "(test)",
- encType: Ci.nsILoginManagerCrypto.ENCTYPE_SDR,
- timeCreated: Date.now(),
- timeLastUsed: Date.now(),
- timePasswordChanged: Date.now(),
- timesUsed: 1,
- };
- storeForSave.data.logins.push(rawLoginData);
-
- storeForSave.data.disabledHosts.push("http://www.example.org");
-
- yield storeForSave._save();
-
- // Test the asynchronous initialization path.
- let storeForLoad = new LoginStore(storeForSave.path);
- yield storeForLoad.load();
-
- do_check_eq(storeForLoad.data.logins.length, 1);
- do_check_matches(storeForLoad.data.logins[0], rawLoginData);
- do_check_eq(storeForLoad.data.disabledHosts.length, 1);
- do_check_eq(storeForLoad.data.disabledHosts[0], "http://www.example.org");
-
- // Test the synchronous initialization path.
- storeForLoad = new LoginStore(storeForSave.path);
- storeForLoad.ensureDataReady();
-
- do_check_eq(storeForLoad.data.logins.length, 1);
- do_check_matches(storeForLoad.data.logins[0], rawLoginData);
- do_check_eq(storeForLoad.data.disabledHosts.length, 1);
- do_check_eq(storeForLoad.data.disabledHosts[0], "http://www.example.org");
-});
-
-/**
- * Checks that loading from a missing file results in empty arrays.
- */
-add_task(function* test_load_empty()
-{
- let store = new LoginStore(getTempFile(TEST_STORE_FILE_NAME).path);
-
- do_check_false(yield OS.File.exists(store.path));
-
- yield store.load();
-
- do_check_false(yield OS.File.exists(store.path));
-
- do_check_eq(store.data.logins.length, 0);
- do_check_eq(store.data.disabledHosts.length, 0);
-});
-
-/**
- * Checks that saving empty data still overwrites any existing file.
- */
-add_task(function* test_save_empty()
-{
- let store = new LoginStore(getTempFile(TEST_STORE_FILE_NAME).path);
-
- yield store.load();
-
- let createdFile = yield OS.File.open(store.path, { create: true });
- yield createdFile.close();
-
- yield store._save();
-
- do_check_true(yield OS.File.exists(store.path));
-});
-
-/**
- * Loads data from a string in a predefined format. The purpose of this test is
- * to verify that the JSON format used in previous versions can be loaded.
- */
-add_task(function* test_load_string_predefined()
-{
- let store = new LoginStore(getTempFile(TEST_STORE_FILE_NAME).path);
-
- let string = "{\"logins\":[{" +
- "\"id\":1," +
- "\"hostname\":\"http://www.example.com\"," +
- "\"httpRealm\":null," +
- "\"formSubmitURL\":\"http://www.example.com/submit-url\"," +
- "\"usernameField\":\"usernameField\"," +
- "\"passwordField\":\"passwordField\"," +
- "\"encryptedUsername\":\"(test)\"," +
- "\"encryptedPassword\":\"(test)\"," +
- "\"guid\":\"(test)\"," +
- "\"encType\":1," +
- "\"timeCreated\":1262304000000," +
- "\"timeLastUsed\":1262390400000," +
- "\"timePasswordChanged\":1262476800000," +
- "\"timesUsed\":1}],\"disabledHosts\":[" +
- "\"http://www.example.org\"]}";
-
- yield OS.File.writeAtomic(store.path,
- new TextEncoder().encode(string),
- { tmpPath: store.path + ".tmp" });
-
- yield store.load();
-
- do_check_eq(store.data.logins.length, 1);
- do_check_matches(store.data.logins[0], {
- id: 1,
- hostname: "http://www.example.com",
- httpRealm: null,
- formSubmitURL: "http://www.example.com/submit-url",
- usernameField: "usernameField",
- passwordField: "passwordField",
- encryptedUsername: "(test)",
- encryptedPassword: "(test)",
- guid: "(test)",
- encType: Ci.nsILoginManagerCrypto.ENCTYPE_SDR,
- timeCreated: 1262304000000,
- timeLastUsed: 1262390400000,
- timePasswordChanged: 1262476800000,
- timesUsed: 1,
- });
-
- do_check_eq(store.data.disabledHosts.length, 1);
- do_check_eq(store.data.disabledHosts[0], "http://www.example.org");
-});
-
-/**
- * Loads login data from a malformed JSON string.
- */
-add_task(function* test_load_string_malformed()
-{
- let store = new LoginStore(getTempFile(TEST_STORE_FILE_NAME).path);
-
- let string = "{\"logins\":[{\"hostname\":\"http://www.example.com\"," +
- "\"id\":1,";
-
- yield OS.File.writeAtomic(store.path, new TextEncoder().encode(string),
- { tmpPath: store.path + ".tmp" });
-
- yield store.load();
-
- // A backup file should have been created.
- do_check_true(yield OS.File.exists(store.path + ".corrupt"));
- yield OS.File.remove(store.path + ".corrupt");
-
- // The store should be ready to accept new data.
- do_check_eq(store.data.logins.length, 0);
- do_check_eq(store.data.disabledHosts.length, 0);
-});
-
-/**
- * Loads login data from a malformed JSON string, using the synchronous
- * initialization path.
- */
-add_task(function* test_load_string_malformed_sync()
-{
- let store = new LoginStore(getTempFile(TEST_STORE_FILE_NAME).path);
-
- let string = "{\"logins\":[{\"hostname\":\"http://www.example.com\"," +
- "\"id\":1,";
-
- yield OS.File.writeAtomic(store.path, new TextEncoder().encode(string),
- { tmpPath: store.path + ".tmp" });
-
- store.ensureDataReady();
-
- // A backup file should have been created.
- do_check_true(yield OS.File.exists(store.path + ".corrupt"));
- yield OS.File.remove(store.path + ".corrupt");
-
- // The store should be ready to accept new data.
- do_check_eq(store.data.logins.length, 0);
- do_check_eq(store.data.disabledHosts.length, 0);
-});