/* 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 isValidPref(prefName) { return Services.prefs.getPrefType(prefName) !== Services.prefs.PREF_INVALID; } // Check a pref that appears in testing/profiles/xpcshell/user.js // but NOT in StaticPrefList.yaml, modules/libpref/init/all.js function has_pref_from_xpcshell_user_js() { return isValidPref("extensions.webextensions.warnings-as-errors"); } // Test pref from xpcshell-with-prefs.ini function has_pref_from_manifest_defaults() { return isValidPref("dummy.pref.from.test.manifest"); } // Test pref set in xpcshell.ini and xpcshell-with-prefs.ini function has_pref_from_manifest_file_section() { return isValidPref("dummy.pref.from.test.file"); } function check_common_xpcshell_with_prefs() { Assert.ok( has_pref_from_xpcshell_user_js(), "Should have pref from xpcshell's user.js" ); Assert.ok( has_pref_from_manifest_defaults(), "Should have pref from DEFAULTS in xpcshell-with-prefs.ini" ); } function check_common_xpcshell_without_prefs() { Assert.ok( has_pref_from_xpcshell_user_js(), "Should have pref from xpcshell's user.js" ); Assert.ok( !has_pref_from_manifest_defaults(), "xpcshell.ini did not set any prefs in DEFAULTS" ); }