browser/experiments/test/xpcshell/test_upgrade.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:34a2311e4238
1 /* Any copyright is dedicated to the Public Domain.
2 * http://creativecommons.org/publicdomain/zero/1.0/ */
3
4 "use strict";
5 Cu.import("resource:///modules/experiments/Experiments.jsm");
6
7 const SEC_IN_ONE_DAY = 24 * 60 * 60;
8 const MS_IN_ONE_DAY = SEC_IN_ONE_DAY * 1000;
9
10 let cacheData = {
11 _enabled: true,
12 _manifestData: {
13 id: "foobartestid",
14 xpiURL: "http://example.com/foo.xpi",
15 xpiHash: "sha256:abcde",
16 startTime: 0,
17 endTime: 2000000000,
18 maxActiveSeconds: 40000000,
19 appName: "TestApp",
20 channel: "test-foo",
21 },
22 _needsUpdate: false,
23 _randomValue: 0.5,
24 _failedStart: false,
25 _name: "Foo",
26 _description: "Foobar",
27 _homepageURL: "",
28 _addonId: "foo@test",
29 _startDate: 0,
30 _endDate: 2000000000,
31 _branch: null
32 };
33
34 add_task(function* test_valid() {
35 let e = new Experiments.ExperimentEntry();
36 Assert.ok(e.initFromCacheData(cacheData));
37 Assert.ok(e.enabled);
38 });
39
40 add_task(function* test_upgrade() {
41 let e = new Experiments.ExperimentEntry();
42 delete cacheData._branch;
43 Assert.ok(e.initFromCacheData(cacheData));
44 Assert.ok(e.enabled);
45 });
46
47 add_task(function* test_missing() {
48 let e = new Experiments.ExperimentEntry();
49 delete cacheData._name;
50 Assert.ok(!e.initFromCacheData(cacheData));
51 });
52
53 function run_test() {
54 run_next_test();
55 }

mercurial