summaryrefslogtreecommitdiffstats
path: root/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_impression_groups.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_impression_groups.js')
-rw-r--r--browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_impression_groups.js223
1 files changed, 223 insertions, 0 deletions
diff --git a/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_impression_groups.js b/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_impression_groups.js
new file mode 100644
index 0000000000..199460e312
--- /dev/null
+++ b/browser/components/urlbar/tests/engagementTelemetry/browser/browser_glean_telemetry_impression_groups.js
@@ -0,0 +1,223 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+// Test for the following data of impression telemetry.
+// - groups
+// - results
+// - n_results
+
+add_setup(async function () {
+ await initGroupTest();
+ // Increase the pausing time to ensure to ready for all suggestions.
+ await SpecialPowers.pushPrefEnv({
+ set: [
+ [
+ "browser.urlbar.searchEngagementTelemetry.pauseImpressionIntervalMs",
+ 500,
+ ],
+ ],
+ });
+});
+
+add_task(async function heuristics() {
+ await doHeuristicsTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ { reason: "pause", groups: "heuristic", results: "search_engine" },
+ ]),
+ });
+});
+
+add_task(async function adaptive_history() {
+ await doAdaptiveHistoryTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,adaptive_history",
+ results: "search_engine,history",
+ n_results: 2,
+ },
+ ]),
+ });
+});
+
+add_task(async function search_history() {
+ await doSearchHistoryTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,search_history,search_history",
+ results: "search_engine,search_history,search_history",
+ n_results: 3,
+ },
+ ]),
+ });
+});
+
+add_task(async function search_suggest() {
+ await doSearchSuggestTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,search_suggest,search_suggest",
+ results: "search_engine,search_suggest,search_suggest",
+ n_results: 3,
+ },
+ ]),
+ });
+
+ await doTailSearchSuggestTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,search_suggest",
+ results: "search_engine,search_suggest",
+ n_results: 2,
+ },
+ ]),
+ });
+});
+
+add_task(async function top_pick() {
+ await doTopPickTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,top_pick,search_suggest,search_suggest",
+ results:
+ "search_engine,rs_adm_sponsored,search_suggest,search_suggest",
+ n_results: 4,
+ },
+ ]),
+ });
+});
+
+add_task(async function top_site() {
+ await doTopSiteTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "top_site,suggested_index",
+ results: "top_site,action",
+ n_results: 2,
+ },
+ ]),
+ });
+});
+
+add_task(async function remote_tab() {
+ await doRemoteTabTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,remote_tab",
+ results: "search_engine,remote_tab",
+ n_results: 2,
+ },
+ ]),
+ });
+});
+
+add_task(async function addon() {
+ await doAddonTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "addon",
+ results: "addon",
+ n_results: 1,
+ },
+ ]),
+ });
+});
+
+add_task(async function general() {
+ await doGeneralBookmarkTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,suggested_index,general",
+ results: "search_engine,action,bookmark",
+ n_results: 3,
+ },
+ ]),
+ });
+
+ await doGeneralHistoryTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,general",
+ results: "search_engine,history",
+ n_results: 2,
+ },
+ ]),
+ });
+});
+
+add_task(async function suggest() {
+ await doSuggestTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ groups: "heuristic,suggest",
+ results: "search_engine,rs_adm_nonsponsored",
+ n_results: 2,
+ },
+ ]),
+ });
+});
+
+add_task(async function about_page() {
+ await doAboutPageTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,about_page,about_page",
+ results: "search_engine,history,history",
+ n_results: 3,
+ },
+ ]),
+ });
+});
+
+add_task(async function suggested_index() {
+ await doSuggestedIndexTest({
+ trigger: () => waitForPauseImpression(),
+ assert: () =>
+ assertImpressionTelemetry([
+ {
+ reason: "pause",
+ groups: "heuristic,suggested_index",
+ results: "search_engine,unit",
+ n_results: 2,
+ },
+ ]),
+ });
+});