Loading browser/components/pocket/content/SaveToPocket.jsm +9 −2 Original line number Diff line number Diff line Loading @@ -311,8 +311,15 @@ var SaveToPocket = { break; } case "Reader:Clicked-pocket-button": { let pocketPanel = message.target.ownerDocument.querySelector( "#customizationui-widget-panel" ); if (pocketPanel?.getAttribute("panelopen")) { pocketPanel.hidePopup(); } else { // Saves the currently viewed page. Pocket.savePage(message.target); } break; } } Loading toolkit/components/reader/test/browser_readerMode_pocket.js +49 −0 Original line number Diff line number Diff line Loading @@ -88,3 +88,52 @@ add_task(async function() { BrowserTestUtils.removeTab(tab1); BrowserTestUtils.removeTab(tab2); }); /** * Test that the pocket button toggles the pocket popup successfully */ add_task(async function() { await SpecialPowers.pushPrefEnv({ set: [["reader.improvements_H12022.enabled", true]], }); await BrowserTestUtils.withNewTab( TEST_PATH + "readerModeArticleShort.html", async function(browser) { let pageShownPromise = BrowserTestUtils.waitForContentEvent( browser, "AboutReaderContentReady" ); let readerButton = document.getElementById("reader-mode-button"); readerButton.click(); await pageShownPromise; await SpecialPowers.spawn(browser, [], async function() { content.document.querySelector(".pocket-button").click(); }); let panel = gBrowser.selectedBrowser.ownerDocument.querySelector( "#customizationui-widget-panel" ); await BrowserTestUtils.waitForMutationCondition( panel, { attributes: true }, () => { return BrowserTestUtils.is_visible(panel); } ); ok(BrowserTestUtils.is_visible(panel), "Panel buttons are visible"); await SpecialPowers.spawn(browser, [], async function() { content.document.querySelector(".pocket-button").click(); }); await BrowserTestUtils.waitForMutationCondition( panel, { attributes: true }, () => { return BrowserTestUtils.is_hidden(panel); } ); ok(BrowserTestUtils.is_hidden(panel), "Panel buttons are hidden"); } ); }); Loading
browser/components/pocket/content/SaveToPocket.jsm +9 −2 Original line number Diff line number Diff line Loading @@ -311,8 +311,15 @@ var SaveToPocket = { break; } case "Reader:Clicked-pocket-button": { let pocketPanel = message.target.ownerDocument.querySelector( "#customizationui-widget-panel" ); if (pocketPanel?.getAttribute("panelopen")) { pocketPanel.hidePopup(); } else { // Saves the currently viewed page. Pocket.savePage(message.target); } break; } } Loading
toolkit/components/reader/test/browser_readerMode_pocket.js +49 −0 Original line number Diff line number Diff line Loading @@ -88,3 +88,52 @@ add_task(async function() { BrowserTestUtils.removeTab(tab1); BrowserTestUtils.removeTab(tab2); }); /** * Test that the pocket button toggles the pocket popup successfully */ add_task(async function() { await SpecialPowers.pushPrefEnv({ set: [["reader.improvements_H12022.enabled", true]], }); await BrowserTestUtils.withNewTab( TEST_PATH + "readerModeArticleShort.html", async function(browser) { let pageShownPromise = BrowserTestUtils.waitForContentEvent( browser, "AboutReaderContentReady" ); let readerButton = document.getElementById("reader-mode-button"); readerButton.click(); await pageShownPromise; await SpecialPowers.spawn(browser, [], async function() { content.document.querySelector(".pocket-button").click(); }); let panel = gBrowser.selectedBrowser.ownerDocument.querySelector( "#customizationui-widget-panel" ); await BrowserTestUtils.waitForMutationCondition( panel, { attributes: true }, () => { return BrowserTestUtils.is_visible(panel); } ); ok(BrowserTestUtils.is_visible(panel), "Panel buttons are visible"); await SpecialPowers.spawn(browser, [], async function() { content.document.querySelector(".pocket-button").click(); }); await BrowserTestUtils.waitForMutationCondition( panel, { attributes: true }, () => { return BrowserTestUtils.is_hidden(panel); } ); ok(BrowserTestUtils.is_hidden(panel), "Panel buttons are hidden"); } ); });