summaryrefslogtreecommitdiffstats
path: root/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_basic.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_basic.js')
-rw-r--r--devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_basic.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_basic.js b/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_basic.js
new file mode 100644
index 0000000000..5970d6a70d
--- /dev/null
+++ b/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_basic.js
@@ -0,0 +1,46 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+/* import-globals-from helper-telemetry.js */
+Services.scriptloader.loadSubScript(
+ CHROME_URL_ROOT + "helper-telemetry.js",
+ this
+);
+
+/**
+ * Check that telemetry events are recorded when opening and closing about debugging.
+ */
+add_task(async function () {
+ setupTelemetryTest();
+
+ const { tab } = await openAboutDebugging();
+
+ const openEvents = readAboutDebuggingEvents().filter(
+ e => e.method === "open_adbg"
+ );
+ is(
+ openEvents.length,
+ 1,
+ "Exactly one open event was logged for about:debugging"
+ );
+ const sessionId = openEvents[0].extras.session_id;
+ ok(!isNaN(sessionId), "Open event has a valid session id");
+
+ await removeTab(tab);
+
+ const closeEvents = readAboutDebuggingEvents().filter(
+ e => e.method === "close_adbg"
+ );
+ is(
+ closeEvents.length,
+ 1,
+ "Exactly one close event was logged for about:debugging"
+ );
+ is(
+ closeEvents[0].extras.session_id,
+ sessionId,
+ "Close event has the same session id as the open event"
+ );
+});