summaryrefslogtreecommitdiff
path: root/data/extensions/jid1-KtlZuoiikVfFew@jetpack/node_modules/pathfinder/test/test-userstyles.js
diff options
context:
space:
mode:
Diffstat (limited to 'data/extensions/jid1-KtlZuoiikVfFew@jetpack/node_modules/pathfinder/test/test-userstyles.js')
-rw-r--r--data/extensions/jid1-KtlZuoiikVfFew@jetpack/node_modules/pathfinder/test/test-userstyles.js116
1 files changed, 116 insertions, 0 deletions
diff --git a/data/extensions/jid1-KtlZuoiikVfFew@jetpack/node_modules/pathfinder/test/test-userstyles.js b/data/extensions/jid1-KtlZuoiikVfFew@jetpack/node_modules/pathfinder/test/test-userstyles.js
new file mode 100644
index 0000000..50b741e
--- /dev/null
+++ b/data/extensions/jid1-KtlZuoiikVfFew@jetpack/node_modules/pathfinder/test/test-userstyles.js
@@ -0,0 +1,116 @@
+/* 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/. */
+'use strict';
+
+const { Loader } = require('sdk/test/loader');
+
+const userstyles = require('userstyles');
+
+const TEST_CSS_URL = module.uri.replace(/\.js$/, '.css');
+const TEST_FNF_URL = module.uri.replace(/\.js$/, '.x.css');
+
+// TEST: userstyles.load
+exports.testLoad = function(assert) {
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is unregistered.');
+
+ userstyles.load(TEST_CSS_URL);
+ assert.ok(userstyles.registered(TEST_CSS_URL), 'css was registered.');
+
+ userstyles.unload(TEST_CSS_URL);
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css was unregistered.');
+};
+
+// TEST: userstyles.load file not found
+exports.testLoadFNF = function(assert) {
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is not registered.');
+
+ try {
+ userstyles.load(TEST_FNF_URL);
+ assert.fail('trying to load a file that does not exist should throw an error');
+ }
+ catch(e) {
+ assert.pass('trying to load a file that does not exist throws an error');
+ }
+
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css was not registered.');
+};
+
+// TEST: userstyles.load for 'agent' type
+exports.testLoadAgent = function(assert) {
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is not registered.');
+ assert.equal(userstyles.registered(TEST_CSS_URL, {type: 'agent'}), false, 'css is not registered.');
+
+ userstyles.load(TEST_CSS_URL, {type: 'AgeNt'});
+ assert.ok(userstyles.registered(TEST_CSS_URL, {type: 'AGENT'}), 'css was registered.');
+
+ try {
+ userstyles.unload(TEST_CSS_URL);
+ assert.fail('unregister did not throw an error');
+ }
+ catch(e) {
+ assert.pass('unregister did throw an error');
+ }
+ assert.equal(userstyles.registered(TEST_CSS_URL, {type: 'agent'}), true, 'css was not unregistered.');
+
+ userstyles.unload(TEST_CSS_URL, {type: 'agent'});
+ assert.equal(userstyles.registered(TEST_CSS_URL, {type: 'agent'}), false, 'css was unregistered.');
+};
+
+exports.testUnload = function(assert) {
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is unregistered.');
+ let loader = Loader(module);
+
+ loader.require('userstyles').load(TEST_CSS_URL);
+ assert.ok(userstyles.registered(TEST_CSS_URL), 'css was registered.');
+
+ loader.unload();
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css was unregistered.');
+}
+
+exports.testUnloadWithMultipleLoads = function(assert) {
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is unregistered.');
+ let loader = Loader(module);
+
+ // first load
+ loader.require('userstyles').load(TEST_CSS_URL);
+ assert.ok(userstyles.registered(TEST_CSS_URL), 'css was registered.');
+
+ // now unload
+ loader.require('userstyles').unload(TEST_CSS_URL);
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is unregistered.');
+
+ // now load again
+ loader.require('userstyles').load(TEST_CSS_URL);
+ assert.ok(userstyles.registered(TEST_CSS_URL), 'css was registered.');
+
+ // send addon unload message and see if we fail
+ loader.unload();
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is unregistered.');
+}
+
+exports.testUnloadWithMultipleLoaders = function(assert) {
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is unregistered.');
+ let loader = Loader(module);
+
+ // first load
+ loader.require('userstyles').load(TEST_CSS_URL);
+ assert.ok(userstyles.registered(TEST_CSS_URL), 'css was registered.');
+
+ // now unload
+ loader.require('userstyles').unload(TEST_CSS_URL);
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css is unregistered.');
+
+ // now load again
+ userstyles.load(TEST_CSS_URL);
+ assert.ok(userstyles.registered(TEST_CSS_URL), 'css was registered.');
+
+ // send addon unload message and see if we fail
+ loader.unload();
+ assert.equal(userstyles.registered(TEST_CSS_URL), true, 'css is still registered.');
+
+ userstyles.unload(TEST_CSS_URL);
+ assert.equal(userstyles.registered(TEST_CSS_URL), false, 'css was unregistered.');
+}
+
+require('sdk/test').run(exports);