summaryrefslogtreecommitdiffstats
path: root/toolkit/components/passwordmgr/test/unit/test_disabled_hosts.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/passwordmgr/test/unit/test_disabled_hosts.js')
-rw-r--r--toolkit/components/passwordmgr/test/unit/test_disabled_hosts.js196
1 files changed, 0 insertions, 196 deletions
diff --git a/toolkit/components/passwordmgr/test/unit/test_disabled_hosts.js b/toolkit/components/passwordmgr/test/unit/test_disabled_hosts.js
deleted file mode 100644
index ff3b7e868..000000000
--- a/toolkit/components/passwordmgr/test/unit/test_disabled_hosts.js
+++ /dev/null
@@ -1,196 +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 getLoginSavingEnabled, setLoginSavingEnabled, and getAllDisabledHosts.
- */
-
-"use strict";
-
-// Tests
-
-/**
- * Tests setLoginSavingEnabled and getAllDisabledHosts.
- */
-add_task(function test_setLoginSavingEnabled_getAllDisabledHosts()
-{
- // Add some disabled hosts, and verify that different schemes for the same
- // domain are considered different hosts.
- let hostname1 = "http://disabled1.example.com";
- let hostname2 = "http://disabled2.example.com";
- let hostname3 = "https://disabled2.example.com";
- Services.logins.setLoginSavingEnabled(hostname1, false);
- Services.logins.setLoginSavingEnabled(hostname2, false);
- Services.logins.setLoginSavingEnabled(hostname3, false);
-
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- [hostname1, hostname2, hostname3]);
-
- // Adding the same host twice should not result in an error.
- Services.logins.setLoginSavingEnabled(hostname2, false);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- [hostname1, hostname2, hostname3]);
-
- // Removing a disabled host should work.
- Services.logins.setLoginSavingEnabled(hostname2, true);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- [hostname1, hostname3]);
-
- // Removing the last disabled host should work.
- Services.logins.setLoginSavingEnabled(hostname1, true);
- Services.logins.setLoginSavingEnabled(hostname3, true);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- []);
-});
-
-/**
- * Tests setLoginSavingEnabled and getLoginSavingEnabled.
- */
-add_task(function test_setLoginSavingEnabled_getLoginSavingEnabled()
-{
- let hostname1 = "http://disabled.example.com";
- let hostname2 = "https://disabled.example.com";
-
- // Hosts should not be disabled by default.
- do_check_true(Services.logins.getLoginSavingEnabled(hostname1));
- do_check_true(Services.logins.getLoginSavingEnabled(hostname2));
-
- // Test setting initial values.
- Services.logins.setLoginSavingEnabled(hostname1, false);
- Services.logins.setLoginSavingEnabled(hostname2, true);
- do_check_false(Services.logins.getLoginSavingEnabled(hostname1));
- do_check_true(Services.logins.getLoginSavingEnabled(hostname2));
-
- // Test changing values.
- Services.logins.setLoginSavingEnabled(hostname1, true);
- Services.logins.setLoginSavingEnabled(hostname2, false);
- do_check_true(Services.logins.getLoginSavingEnabled(hostname1));
- do_check_false(Services.logins.getLoginSavingEnabled(hostname2));
-
- // Clean up.
- Services.logins.setLoginSavingEnabled(hostname2, true);
-});
-
-/**
- * Tests setLoginSavingEnabled with invalid NUL characters in the hostname.
- */
-add_task(function test_setLoginSavingEnabled_invalid_characters()
-{
- let hostname = "http://null\0X.example.com";
- Assert.throws(() => Services.logins.setLoginSavingEnabled(hostname, false),
- /Invalid hostname/);
-
- // Verify that no data was stored by the previous call.
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- []);
-});
-
-/**
- * Tests different values of the "signon.rememberSignons" property.
- */
-add_task(function test_rememberSignons()
-{
- let hostname1 = "http://example.com";
- let hostname2 = "http://localhost";
-
- // The default value for the preference should be true.
- do_check_true(Services.prefs.getBoolPref("signon.rememberSignons"));
-
- // Hosts should not be disabled by default.
- Services.logins.setLoginSavingEnabled(hostname1, false);
- do_check_false(Services.logins.getLoginSavingEnabled(hostname1));
- do_check_true(Services.logins.getLoginSavingEnabled(hostname2));
-
- // Disable storage of saved passwords globally.
- Services.prefs.setBoolPref("signon.rememberSignons", false);
- do_register_cleanup(
- () => Services.prefs.clearUserPref("signon.rememberSignons"));
-
- // All hosts should now appear disabled.
- do_check_false(Services.logins.getLoginSavingEnabled(hostname1));
- do_check_false(Services.logins.getLoginSavingEnabled(hostname2));
-
- // The list of disabled hosts should be unaltered.
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- [hostname1]);
-
- // Changing values with the preference set should work.
- Services.logins.setLoginSavingEnabled(hostname1, true);
- Services.logins.setLoginSavingEnabled(hostname2, false);
-
- // All hosts should still appear disabled.
- do_check_false(Services.logins.getLoginSavingEnabled(hostname1));
- do_check_false(Services.logins.getLoginSavingEnabled(hostname2));
-
- // The list of disabled hosts should have been changed.
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- [hostname2]);
-
- // Enable storage of saved passwords again.
- Services.prefs.setBoolPref("signon.rememberSignons", true);
-
- // Hosts should now appear enabled as requested.
- do_check_true(Services.logins.getLoginSavingEnabled(hostname1));
- do_check_false(Services.logins.getLoginSavingEnabled(hostname2));
-
- // Clean up.
- Services.logins.setLoginSavingEnabled(hostname2, true);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(),
- []);
-});
-
-/**
- * Tests storing disabled hosts with non-ASCII characters where IDN is supported.
- */
-add_task(function* test_storage_setLoginSavingEnabled_nonascii_IDN_is_supported()
-{
- let hostname = "http://大.net";
- let encoding = "http://xn--pss.net";
-
- // Test adding disabled host with nonascii URL (http://大.net).
- Services.logins.setLoginSavingEnabled(hostname, false);
- yield* LoginTestUtils.reloadData();
- Assert.equal(Services.logins.getLoginSavingEnabled(hostname), false);
- Assert.equal(Services.logins.getLoginSavingEnabled(encoding), false);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(), [hostname]);
-
- LoginTestUtils.clearData();
-
- // Test adding disabled host with IDN ("http://xn--pss.net").
- Services.logins.setLoginSavingEnabled(encoding, false);
- yield* LoginTestUtils.reloadData();
- Assert.equal(Services.logins.getLoginSavingEnabled(hostname), false);
- Assert.equal(Services.logins.getLoginSavingEnabled(encoding), false);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(), [hostname]);
-
- LoginTestUtils.clearData();
-});
-
-/**
- * Tests storing disabled hosts with non-ASCII characters where IDN is not supported.
- */
-add_task(function* test_storage_setLoginSavingEnabled_nonascii_IDN_not_supported()
-{
- let hostname = "http://√.com";
- let encoding = "http://xn--19g.com";
-
- // Test adding disabled host with nonascii URL (http://√.com).
- Services.logins.setLoginSavingEnabled(hostname, false);
- yield* LoginTestUtils.reloadData();
- Assert.equal(Services.logins.getLoginSavingEnabled(hostname), false);
- Assert.equal(Services.logins.getLoginSavingEnabled(encoding), false);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(), [encoding]);
-
- LoginTestUtils.clearData();
-
- // Test adding disabled host with IDN ("http://xn--19g.com").
- Services.logins.setLoginSavingEnabled(encoding, false);
- yield* LoginTestUtils.reloadData();
- Assert.equal(Services.logins.getLoginSavingEnabled(hostname), false);
- Assert.equal(Services.logins.getLoginSavingEnabled(encoding), false);
- LoginTestUtils.assertDisabledHostsEqual(Services.logins.getAllDisabledHosts(), [encoding]);
-
- LoginTestUtils.clearData();
-});