main.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  1. /* This Source Code Form is subject to the terms of the Mozilla Public
  2. * License, v. 2.0. If a copy of the MPL was not distributed with this
  3. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  4. 'use strict';
  5. const { id, preferencesBranch } = require('sdk/self');
  6. const simple = require('sdk/simple-prefs');
  7. const service = require('sdk/preferences/service');
  8. const { AddonManager } = require('chrome').Cu.import('resource://gre/modules/AddonManager.jsm', {});
  9. const expected_id = 'predefined-id@test';
  10. exports.testExpectedID = function(assert) {
  11. assert.equal(id, expected_id, 'ID is as expected');
  12. assert.equal(preferencesBranch, expected_id, 'preferences-branch is ' + expected_id);
  13. assert.equal(simple.prefs.test, 5, 'test pref is 5');
  14. simple.prefs.test2 = '25';
  15. assert.equal(service.get('extensions.'+expected_id+'.test2'), '25', 'test pref is 25');
  16. assert.equal(service.get('extensions.'+expected_id+'.test2'), simple.prefs.test2, 'test pref is 25');
  17. }
  18. exports.testSelfID = function(assert, done) {
  19. assert.equal(typeof(id), 'string', 'self.id is a string');
  20. assert.ok(id.length > 0, 'self.id not empty');
  21. AddonManager.getAddonByID(id, function(addon) {
  22. assert.equal(addon.id, id, 'found addon with self.id');
  23. done();
  24. });
  25. }
  26. require('sdk/test/runner').runTestsFromModule(module);