|
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 |
|
6 const { id, preferencesBranch } = require('sdk/self'); |
|
7 const simple = require('sdk/simple-prefs'); |
|
8 const service = require('sdk/preferences/service'); |
|
9 const { AddonManager } = require('chrome').Cu.import('resource://gre/modules/AddonManager.jsm', {}); |
|
10 |
|
11 const expected_id = 'predefined-id@test'; |
|
12 |
|
13 exports.testExpectedID = function(assert) { |
|
14 assert.equal(id, expected_id, 'ID is as expected'); |
|
15 assert.equal(preferencesBranch, expected_id, 'preferences-branch is ' + expected_id); |
|
16 |
|
17 assert.equal(simple.prefs.test, 5, 'test pref is 5'); |
|
18 |
|
19 simple.prefs.test2 = '25'; |
|
20 assert.equal(service.get('extensions.'+expected_id+'.test2'), '25', 'test pref is 25'); |
|
21 assert.equal(service.get('extensions.'+expected_id+'.test2'), simple.prefs.test2, 'test pref is 25'); |
|
22 } |
|
23 |
|
24 exports.testSelfID = function(assert, done) { |
|
25 assert.equal(typeof(id), 'string', 'self.id is a string'); |
|
26 assert.ok(id.length > 0, 'self.id not empty'); |
|
27 |
|
28 AddonManager.getAddonByID(id, function(addon) { |
|
29 assert.equal(addon.id, id, 'found addon with self.id'); |
|
30 done(); |
|
31 }); |
|
32 } |
|
33 |
|
34 require('sdk/test/runner').runTestsFromModule(module); |