browser_accessibility_context_menu_browser.js (2115B)
1 /* Any copyright is dedicated to the Public Domain. 2 * http://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 "use strict"; 5 6 const TEST_URI = '<h1 id="h1">header</h1><p id="p">paragraph</p>'; 7 8 addA11YPanelTask( 9 "Test show accessibility properties context menu in browser.", 10 TEST_URI, 11 async function ({ panel, toolbox, browser }) { 12 // Load the inspector to ensure it to use in this test. 13 await toolbox.loadTool("inspector"); 14 15 const headerSelector = "#h1"; 16 17 const contextMenu = document.getElementById("contentAreaContextMenu"); 18 const awaitPopupShown = BrowserTestUtils.waitForEvent( 19 contextMenu, 20 "popupshown" 21 ); 22 await BrowserTestUtils.synthesizeMouse( 23 headerSelector, 24 0, 25 0, 26 { 27 type: "contextmenu", 28 button: 2, 29 centered: true, 30 }, 31 browser 32 ); 33 await awaitPopupShown; 34 35 const inspectA11YPropsItem = contextMenu.querySelector( 36 "#context-inspect-a11y" 37 ); 38 39 info( 40 "Triggering 'Inspect Accessibility Properties' and waiting for " + 41 "accessibility panel to open" 42 ); 43 const popupHidden = BrowserTestUtils.waitForEvent( 44 contextMenu, 45 "popuphidden" 46 ); 47 contextMenu.activateItem(inspectA11YPropsItem); 48 await popupHidden; 49 50 const selected = await panel.once("new-accessible-front-selected"); 51 const expectedSelectedNode = await getNodeFront( 52 headerSelector, 53 toolbox.getPanel("inspector") 54 ); 55 const expectedSelected = 56 await panel.accessibilityProxy.accessibilityFront.accessibleWalkerFront.getAccessibleFor( 57 expectedSelectedNode 58 ); 59 is( 60 toolbox.getCurrentPanel(), 61 panel, 62 "Accessibility panel is currently selected" 63 ); 64 is(selected, expectedSelected, "Accessible front selected correctly"); 65 66 const doc = panel.panelWin.document; 67 const propertiesTree = doc.querySelector(".tree"); 68 is(doc.activeElement, propertiesTree, "Properties list must be focused."); 69 ok( 70 isVisible(doc.querySelector(".treeTable .treeRow.selected")), 71 "Selected row is visible." 72 ); 73 } 74 );