summaryrefslogtreecommitdiffstats
path: root/browser/extensions/formautofill/test/unit/test_isAvailable.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/extensions/formautofill/test/unit/test_isAvailable.js')
-rw-r--r--browser/extensions/formautofill/test/unit/test_isAvailable.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/browser/extensions/formautofill/test/unit/test_isAvailable.js b/browser/extensions/formautofill/test/unit/test_isAvailable.js
new file mode 100644
index 0000000000..4633616c26
--- /dev/null
+++ b/browser/extensions/formautofill/test/unit/test_isAvailable.js
@@ -0,0 +1,37 @@
+/**
+ * Test enabling the feature in specific locales and regions.
+ */
+
+"use strict";
+
+const DOM_ENABLED_PREF = "dom.forms.autocomplete.formautofill";
+
+add_task(async function test_defaultTestEnvironment() {
+ Assert.ok(Services.prefs.getBoolPref(DOM_ENABLED_PREF));
+});
+
+add_task(async function test_unsupportedRegion() {
+ Services.prefs.setCharPref("extensions.formautofill.available", "detect");
+ Services.prefs.setCharPref("browser.search.region", "ZZ");
+ registerCleanupFunction(function cleanupRegion() {
+ Services.prefs.clearUserPref("browser.search.region");
+ });
+
+ let addon = await AddonManager.getAddonByID(EXTENSION_ID);
+ await addon.reload();
+
+ Assert.ok(!Services.prefs.getBoolPref(DOM_ENABLED_PREF));
+});
+
+add_task(async function test_supportedRegion() {
+ Services.prefs.setCharPref("extensions.formautofill.available", "detect");
+ Services.prefs.setCharPref("browser.search.region", "US");
+ registerCleanupFunction(function cleanupRegion() {
+ Services.prefs.clearUserPref("browser.search.region");
+ });
+
+ let addon = await AddonManager.getAddonByID(EXTENSION_ID);
+ await addon.reload();
+
+ Assert.ok(Services.prefs.getBoolPref(DOM_ENABLED_PREF));
+});