summaryrefslogtreecommitdiffstats
path: root/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_engagement_interaction.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_engagement_interaction.js')
-rw-r--r--browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_engagement_interaction.js87
1 files changed, 87 insertions, 0 deletions
diff --git a/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_engagement_interaction.js b/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_engagement_interaction.js
new file mode 100644
index 0000000000..9de0de8953
--- /dev/null
+++ b/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_engagement_interaction.js
@@ -0,0 +1,87 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+// Test for the following data of engagement telemetry.
+// - interaction
+
+// Allow more time for Mac machines so they don't time out in verify mode.
+if (AppConstants.platform == "macosx") {
+ requestLongerTimeout(3);
+}
+
+add_setup(async function () {
+ await initInteractionTest();
+});
+
+add_task(async function topsites() {
+ await doTopsitesTest({
+ trigger: () => doEnter(),
+ assert: () => assertEngagementTelemetry([{ interaction: "topsites" }]),
+ });
+});
+
+add_task(async function typed() {
+ await doTypedTest({
+ trigger: () => doEnter(),
+ assert: () => assertEngagementTelemetry([{ interaction: "typed" }]),
+ });
+
+ await doTypedWithResultsPopupTest({
+ trigger: () => doEnter(),
+ assert: () => assertEngagementTelemetry([{ interaction: "typed" }]),
+ });
+});
+
+add_task(async function dropped() {
+ await doTest(async browser => {
+ await doDropAndGo("example.com");
+
+ assertEngagementTelemetry([{ interaction: "dropped" }]);
+ });
+
+ await doTest(async browser => {
+ await showResultByArrowDown();
+ await doDropAndGo("example.com");
+
+ assertEngagementTelemetry([{ interaction: "dropped" }]);
+ });
+});
+
+add_task(async function pasted() {
+ await doPastedTest({
+ trigger: () => doEnter(),
+ assert: () => assertEngagementTelemetry([{ interaction: "pasted" }]),
+ });
+
+ await doPastedWithResultsPopupTest({
+ trigger: () => doEnter(),
+ assert: () => assertEngagementTelemetry([{ interaction: "pasted" }]),
+ });
+
+ await doTest(async browser => {
+ await doPasteAndGo("www.example.com");
+
+ assertEngagementTelemetry([{ interaction: "pasted" }]);
+ });
+
+ await doTest(async browser => {
+ await showResultByArrowDown();
+ await doPasteAndGo("www.example.com");
+
+ assertEngagementTelemetry([{ interaction: "pasted" }]);
+ });
+});
+
+add_task(async function topsite_search() {
+ // TODO: https://bugzilla.mozilla.org/show_bug.cgi?id=1804010
+ // assertEngagementTelemetry([{ interaction: "topsite_search" }]);
+});
+
+add_task(async function returned_restarted_refined() {
+ await doReturnedRestartedRefinedTest({
+ trigger: () => doEnter(),
+ assert: expected => assertEngagementTelemetry([{ interaction: expected }]),
+ });
+});