diff options
Diffstat (limited to 'toolkit/components/telemetry/tests/unit/test_ChildHistograms.js')
-rw-r--r-- | toolkit/components/telemetry/tests/unit/test_ChildHistograms.js | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/toolkit/components/telemetry/tests/unit/test_ChildHistograms.js b/toolkit/components/telemetry/tests/unit/test_ChildHistograms.js deleted file mode 100644 index 11d730499..000000000 --- a/toolkit/components/telemetry/tests/unit/test_ChildHistograms.js +++ /dev/null @@ -1,107 +0,0 @@ - -Cu.import("resource://gre/modules/TelemetryController.jsm", this); -Cu.import("resource://gre/modules/TelemetrySession.jsm", this); -Cu.import("resource://gre/modules/PromiseUtils.jsm", this); -Cu.import("resource://testing-common/ContentTaskUtils.jsm", this); - -const MESSAGE_TELEMETRY_PAYLOAD = "Telemetry:Payload"; -const MESSAGE_TELEMETRY_GET_CHILD_PAYLOAD = "Telemetry:GetChildPayload"; -const MESSAGE_CHILD_TEST_DONE = "ChildTest:Done"; - -const PLATFORM_VERSION = "1.9.2"; -const APP_VERSION = "1"; -const APP_ID = "xpcshell@tests.mozilla.org"; -const APP_NAME = "XPCShell"; - -function run_child_test() { - // Setup histograms with some fixed values. - let flagHist = Telemetry.getHistogramById("TELEMETRY_TEST_FLAG"); - flagHist.add(1); - let countHist = Telemetry.getHistogramById("TELEMETRY_TEST_COUNT"); - Telemetry.setHistogramRecordingEnabled("TELEMETRY_TEST_COUNT", false); - countHist.add(); - Telemetry.setHistogramRecordingEnabled("TELEMETRY_TEST_COUNT", true); - countHist.add(); - countHist.add(); - let categHist = Telemetry.getHistogramById("TELEMETRY_TEST_CATEGORICAL"); - categHist.add("Label2"); - categHist.add("Label3"); - - let flagKeyed = Telemetry.getKeyedHistogramById("TELEMETRY_TEST_KEYED_FLAG"); - flagKeyed.add("a", 1); - flagKeyed.add("b", 1); - let countKeyed = Telemetry.getKeyedHistogramById("TELEMETRY_TEST_KEYED_COUNT"); - Telemetry.setHistogramRecordingEnabled("TELEMETRY_TEST_KEYED_COUNT", false); - countKeyed.add("a"); - countKeyed.add("b"); - Telemetry.setHistogramRecordingEnabled("TELEMETRY_TEST_KEYED_COUNT", true); - countKeyed.add("a"); - countKeyed.add("b"); - countKeyed.add("b"); -} - -function check_histogram_values(payload) { - const hs = payload.histograms; - Assert.ok("TELEMETRY_TEST_COUNT" in hs, "Should have count test histogram."); - Assert.ok("TELEMETRY_TEST_FLAG" in hs, "Should have flag test histogram."); - Assert.ok("TELEMETRY_TEST_CATEGORICAL" in hs, "Should have categorical test histogram."); - Assert.equal(hs["TELEMETRY_TEST_COUNT"].sum, 2, - "Count test histogram should have the right value."); - Assert.equal(hs["TELEMETRY_TEST_FLAG"].sum, 1, - "Flag test histogram should have the right value."); - Assert.equal(hs["TELEMETRY_TEST_CATEGORICAL"].sum, 3, - "Categorical test histogram should have the right sum."); - - const kh = payload.keyedHistograms; - Assert.ok("TELEMETRY_TEST_KEYED_COUNT" in kh, "Should have keyed count test histogram."); - Assert.ok("TELEMETRY_TEST_KEYED_FLAG" in kh, "Should have keyed flag test histogram."); - Assert.equal(kh["TELEMETRY_TEST_KEYED_COUNT"]["a"].sum, 1, - "Keyed count test histogram should have the right value."); - Assert.equal(kh["TELEMETRY_TEST_KEYED_COUNT"]["b"].sum, 2, - "Keyed count test histogram should have the right value."); - Assert.equal(kh["TELEMETRY_TEST_KEYED_FLAG"]["a"].sum, 1, - "Keyed flag test histogram should have the right value."); - Assert.equal(kh["TELEMETRY_TEST_KEYED_FLAG"]["b"].sum, 1, - "Keyed flag test histogram should have the right value."); -} - -add_task(function*() { - if (!runningInParent) { - TelemetryController.testSetupContent(); - run_child_test(); - dump("... done with child test\n"); - do_send_remote_message(MESSAGE_CHILD_TEST_DONE); - return; - } - - // Setup. - do_get_profile(true); - loadAddonManager(APP_ID, APP_NAME, APP_VERSION, PLATFORM_VERSION); - Services.prefs.setBoolPref(PREF_TELEMETRY_ENABLED, true); - yield TelemetryController.testSetup(); - if (runningInParent) { - // Make sure we don't generate unexpected pings due to pref changes. - yield setEmptyPrefWatchlist(); - } - - // Run test in child, don't wait for it to finish. - run_test_in_child("test_ChildHistograms.js"); - yield do_await_remote_message(MESSAGE_CHILD_TEST_DONE); - - yield ContentTaskUtils.waitForCondition(() => { - let payload = TelemetrySession.getPayload("test-ping"); - return payload && - "processes" in payload && - "content" in payload.processes && - "histograms" in payload.processes.content && - "TELEMETRY_TEST_COUNT" in payload.processes.content.histograms; - }); - const payload = TelemetrySession.getPayload("test-ping"); - Assert.ok("processes" in payload, "Should have processes section"); - Assert.ok("content" in payload.processes, "Should have child process section"); - Assert.ok("histograms" in payload.processes.content, "Child process section should have histograms."); - Assert.ok("keyedHistograms" in payload.processes.content, "Child process section should have keyed histograms."); - check_histogram_values(payload.processes.content); - - do_test_finished(); -}); |