/* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; const TEST_CONTENT = `

test h1

`; const TEST_URL = `data:text/html;charset=utf-8,${TEST_CONTENT}`; // Test for the tooltip coordinate on the browsing document in RDM. addRDMTask(TEST_URL, async ({ ui }) => { // On ubuntu1804, the test fails if the real mouse cursor is on the test document. // See Bug 1600183 info("Disable non test mouse event"); window.windowUtils.disableNonTestMouseEvents(true); registerCleanupFunction(() => { window.windowUtils.disableNonTestMouseEvents(false); }); info("Create a promise which waits until the tooltip will be shown"); const tooltip = ui.browserWindow.gBrowser.ownerDocument.getElementById( "remoteBrowserTooltip" ); const onTooltipShown = BrowserTestUtils.waitForEvent(tooltip, "popupshown"); info("Show a tooltip"); await spawnViewportTask(ui, {}, async () => { const target = content.document.querySelector("h1"); await EventUtils.synthesizeMouse( target, 1, 1, { type: "mouseover", isSynthesized: false }, content ); await EventUtils.synthesizeMouse( target, 2, 1, { type: "mousemove", isSynthesized: false }, content ); await EventUtils.synthesizeMouse( target, 3, 1, { type: "mousemove", isSynthesized: false }, content ); }); info("Wait for showing the tooltip"); await onTooltipShown; info("Test the X coordinate of the tooltip"); isnot(tooltip.screenX, 0, "The X coordinate of tooltip should not be 0"); });