test_addon_restartless_xpi.js (1505B)
1 /* Any copyright is dedicated to the Public Domain. 2 http://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 // This test verifies that install of restartless extensions syncs to 5 // other profiles. 6 EnableEngines(["addons"]); 7 8 var phases = { 9 phase01: "profile1", 10 phase02: "profile2", 11 phase03: "profile1", 12 phase04: "profile2", 13 phase05: "profile1", 14 phase06: "profile2", 15 phase07: "profile1", 16 phase08: "profile2", 17 }; 18 19 const id = "restartless-xpi@tests.mozilla.org"; 20 21 // Verify install is synced 22 Phase("phase01", [ 23 [Addons.verifyNot, [id]], 24 [Addons.install, [id]], 25 [Addons.verify, [id], STATE_ENABLED], 26 [Sync], 27 ]); 28 Phase("phase02", [ 29 [Addons.verifyNot, [id]], 30 [Sync], 31 [Addons.verify, [id], STATE_ENABLED], 32 ]); 33 34 // Now disable and see that is is synced. 35 Phase("phase03", [ 36 [EnsureTracking], 37 [Addons.setEnabled, [id], STATE_DISABLED], 38 [Addons.verify, [id], STATE_DISABLED], 39 [Sync], 40 ]); 41 Phase("phase04", [[Sync], [Addons.verify, [id], STATE_DISABLED]]); 42 43 // Enable and see it is synced. 44 Phase("phase05", [ 45 [EnsureTracking], 46 [Addons.setEnabled, [id], STATE_ENABLED], 47 [Addons.verify, [id], STATE_ENABLED], 48 [Sync], 49 ]); 50 Phase("phase06", [[Sync], [Addons.verify, [id], STATE_ENABLED]]); 51 52 // Uninstall and see it is synced. 53 Phase("phase07", [ 54 [EnsureTracking], 55 [Addons.verify, [id], STATE_ENABLED], 56 [Addons.uninstall, [id]], 57 [Addons.verifyNot, [id]], 58 [Sync], 59 ]); 60 Phase("phase08", [ 61 [Addons.verify, [id], STATE_ENABLED], 62 [Sync], 63 [Addons.verifyNot, [id]], 64 ]);