gecko-dev/browser/experiments/test/addons/experiment-racybranch/bootstrap.js
Benjamin Smedberg 7b14c475d0 Bug 1054397 - automated test for the racy while setting experiment branches, followup to bug 1052545 and bug 1038174, r=gfritzsche
--HG--
extra : rebase_source : 80df2293e21f7f7a0d13856cd7d609d5e26b83e0
2014-08-28 10:25:05 -04:00

33 lines
869 B
JavaScript

let {classes: Cc, interfaces: Ci, utils: Cu} = Components;
Cu.import("resource:///modules/experiments/Experiments.jsm");
let gStarted = false;
function startup(data, reasonCode) {
if (gStarted) {
return;
}
gStarted = true;
// delay realstartup to trigger the race condition
Cc['@mozilla.org/thread-manager;1'].getService(Ci.nsIThreadManager)
.mainThread.dispatch(realstartup, 0);
}
function realstartup() {
let experiments = Experiments.instance();
let experiment = experiments._getActiveExperiment();
if (experiment.branch) {
Cu.reportError("Found pre-existing branch: " + experiment.branch);
return;
}
let branch = "racy-set";
experiments.setExperimentBranch(experiment.id, branch)
.then(null, Cu.reportError);
}
function shutdown() { }
function install() { }
function uninstall() { }