Skip to content

Commit f6676f4

Browse files
committed
Bug 1856937 - write a test for 'powered by Fakespot' link Glean event r=perry.mcmanis
Differential Revision: https://phabricator.services.mozilla.com/D191802
1 parent aec74c3 commit f6676f4

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed

browser/components/shopping/tests/browser/browser_ui_telemetry.js

+43
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,30 @@ add_task(async function test_close_telemetry_recorded() {
264264
await SpecialPowers.popPrefEnv();
265265
});
266266

267+
add_task(async function test_powered_by_fakespot_link() {
268+
await Services.fog.testFlushAllChildren();
269+
Services.fog.testResetFOG();
270+
271+
await BrowserTestUtils.withNewTab(
272+
{
273+
url: "about:shoppingsidebar",
274+
gBrowser,
275+
},
276+
async browser => {
277+
await clickPoweredByFakespotLink(browser, MOCK_ANALYZED_PRODUCT_RESPONSE);
278+
}
279+
);
280+
281+
await Services.fog.testFlushAllChildren();
282+
283+
let fakespotLinkEvents =
284+
Glean.shopping.surfacePoweredByFakespotLinkClicked.testGetValue();
285+
assertEventMatches(fakespotLinkEvents[0], {
286+
category: "shopping",
287+
name: "surface_powered_by_fakespot_link_clicked",
288+
});
289+
});
290+
267291
function clickReAnalyzeLink(browser, data) {
268292
return SpecialPowers.spawn(browser, [data], async mockData => {
269293
let shoppingContainer =
@@ -372,3 +396,22 @@ function clickCheckReviewQualityButton(browser, data) {
372396
button.click();
373397
});
374398
}
399+
400+
function clickPoweredByFakespotLink(browser, data) {
401+
return SpecialPowers.spawn(browser, [data], async mockData => {
402+
let shoppingContainer =
403+
content.document.querySelector("shopping-container").wrappedJSObject;
404+
shoppingContainer.data = Cu.cloneInto(mockData, content);
405+
await shoppingContainer.updateComplete;
406+
407+
let settingsEl = shoppingContainer.settingsEl;
408+
await settingsEl.updateComplete;
409+
let fakespotLink = settingsEl.fakespotLearnMoreLinkEl;
410+
411+
// Prevent link navigation for test.
412+
fakespotLink.href = undefined;
413+
await fakespotLink.updateComplete;
414+
415+
fakespotLink.click();
416+
});
417+
}

0 commit comments

Comments
 (0)