michael@0: /* Any copyright is dedicated to the Public Domain. michael@0: http://creativecommons.org/publicdomain/zero/1.0/ */ michael@0: michael@0: // Tests that the developer toolbar works properly michael@0: michael@0: const TEST_URI = "data:text/html;charset=utf-8,
Tooltip Tests
"; michael@0: michael@0: function test() { michael@0: addTab(TEST_URI, function(browser, tab) { michael@0: info("Starting browser_toolbar_tooltip.js"); michael@0: openTest(); michael@0: }); michael@0: } michael@0: michael@0: function openTest() { michael@0: ok(!DeveloperToolbar.visible, "DeveloperToolbar is not visible in runTest"); michael@0: michael@0: oneTimeObserve(DeveloperToolbar.NOTIFICATIONS.SHOW, catchFail(runTest)); michael@0: document.getElementById("Tools:DevToolbar").doCommand(); michael@0: } michael@0: michael@0: function runTest() { michael@0: let tooltipPanel = DeveloperToolbar.tooltipPanel; michael@0: michael@0: DeveloperToolbar.display.focusManager.helpRequest(); michael@0: DeveloperToolbar.display.inputter.setInput('help help'); michael@0: michael@0: DeveloperToolbar.display.inputter.setCursor({ start: 'help help'.length }); michael@0: is(tooltipPanel._dimensions.start, 'help '.length, michael@0: 'search param start, when cursor at end'); michael@0: ok(getLeftMargin() > 30, 'tooltip offset, when cursor at end') michael@0: michael@0: DeveloperToolbar.display.inputter.setCursor({ start: 'help'.length }); michael@0: is(tooltipPanel._dimensions.start, 0, michael@0: 'search param start, when cursor at end of command'); michael@0: ok(getLeftMargin() > 9, 'tooltip offset, when cursor at end of command') michael@0: michael@0: DeveloperToolbar.display.inputter.setCursor({ start: 'help help'.length - 1 }); michael@0: is(tooltipPanel._dimensions.start, 'help '.length, michael@0: 'search param start, when cursor at penultimate position'); michael@0: ok(getLeftMargin() > 30, 'tooltip offset, when cursor at penultimate position') michael@0: michael@0: DeveloperToolbar.display.inputter.setCursor({ start: 0 }); michael@0: is(tooltipPanel._dimensions.start, 0, michael@0: 'search param start, when cursor at start'); michael@0: ok(getLeftMargin() > 9, 'tooltip offset, when cursor at start') michael@0: michael@0: finish(); michael@0: } michael@0: michael@0: function getLeftMargin() { michael@0: let style = DeveloperToolbar.tooltipPanel._panel.style.marginLeft; michael@0: return parseInt(style.slice(0, -2), 10); michael@0: }