<commit_before>const self = require("sdk/self");
const shield = require("./lib/shield/index");
const { when: unload } = require("sdk/system/unload");

const studyConfig = {
  name: self.addonId,
  days: 28,
  surveyUrls: {
  },
  variations: {
    "control": () => {},
    "privacyOnboarding": () => {},
    "onlineAccountsOnboarding": () => {},
    "tabManagementOnboarding": () => {}
  }
};

class ContainersStudy extends shield.Study {
  isEligible () {
  }

  whenEligible () {
  }

  whenInstalled () {
  }

  cleanup(reason) {
    console.log(reason);
  }
}

const thisStudy = new ContainersStudy(studyConfig);

unload((reason) => thisStudy.shutdown(reason));
<commit_msg>startup the study<commit_after>const self = require("sdk/self");
const { when: unload } = require("sdk/system/unload");
const tabs = require("sdk/tabs");

const shield = require("./lib/shield/index");

const studyConfig = {
  name: self.addonId,
  days: 28,
  surveyUrls: {
  },
  variations: {
    "control": () => {},
    "privacyOnboarding": () => {},
    "onlineAccountsOnboarding": () => {},
    "tabManagementOnboarding": () => {}
  }
};

class ContainersStudy extends shield.Study {
  isEligible () {
    console.log("ContainersStudy.isEligible()");
  }

  whenEligible () {
    console.log("ContainersStudy.whenEligible()");
  }

  whenInstalled () {
    console.log("ContainersStudy.whenInstalled()");
    console.log("shield variation: ", this.variation);
    tabs.open(`data:text/html, Thank you for helping us study Containers in Firefox. You are in the ${this.variation} variation.`);
  }

  cleanup(reason) {
    console.log("ContainersStudy.cleanup()");
    console.log(reason);
  }
}

const thisStudy = new ContainersStudy(studyConfig);

unload((reason) => thisStudy.shutdown(reason));

thisStudy.startup(self.loadReason);

{'fraction_non_alphanumeric': 0.17501375894331314, 'fraction_numerical': 0.002201430930104568, 'mean_word_length': 4.05, 'pattern_counts': {'":': 8, '<': 3, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2414647', 'n_tokens_mistral': 632, 'n_tokens_neox': 597, 'n_words': 103}