browser_markup_subgrid_display_badge.js (2409B)
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_URL = URL_ROOT + "doc_markup_subgrid.html"; 7 8 add_task(async function () { 9 const { inspector } = await openInspectorForURL(TEST_URL); 10 const { highlighters, store } = inspector; 11 12 info("Check the subgrid display badge is shown and not active."); 13 await selectNode("main", inspector); 14 const eltContainer = await getContainerForSelector("main", inspector); 15 const subgridDisplayBadge = eltContainer.elt.querySelector( 16 ".inspector-badge.interactive[data-display]" 17 ); 18 ok( 19 !subgridDisplayBadge.classList.contains("active"), 20 "subgrid display badge is not active." 21 ); 22 ok( 23 subgridDisplayBadge.classList.contains("interactive"), 24 "subgrid display badge is interactive." 25 ); 26 27 info("Check the initial state of the grid highlighter."); 28 ok( 29 !highlighters.gridHighlighters.size, 30 "No CSS grid highlighter exists in the highlighters overlay." 31 ); 32 33 info("Toggling ON the CSS grid highlighter from the subgrid display badge."); 34 const onHighlighterShown = highlighters.once("grid-highlighter-shown"); 35 let onCheckboxChange = waitUntilState( 36 store, 37 state => state.grids.length === 2 && state.grids[1].highlighted 38 ); 39 subgridDisplayBadge.click(); 40 await onHighlighterShown; 41 await onCheckboxChange; 42 43 info( 44 "Check that the CSS grid highlighter is created and the display badge state." 45 ); 46 is( 47 highlighters.gridHighlighters.size, 48 1, 49 "CSS grid highlighter is created in the highlighters overlay." 50 ); 51 ok( 52 subgridDisplayBadge.classList.contains("active"), 53 "subgrid display badge is active." 54 ); 55 ok( 56 subgridDisplayBadge.classList.contains("interactive"), 57 "subgrid display badge is interactive." 58 ); 59 60 info("Toggling OFF the CSS grid highlighter from the subgrid display badge."); 61 const onHighlighterHidden = highlighters.once("grid-highlighter-hidden"); 62 onCheckboxChange = waitUntilState( 63 store, 64 state => state.grids.length == 2 && !state.grids[1].highlighted 65 ); 66 subgridDisplayBadge.click(); 67 await onHighlighterHidden; 68 await onCheckboxChange; 69 70 ok( 71 !subgridDisplayBadge.classList.contains("active"), 72 "subgrid display badge is not active." 73 ); 74 ok( 75 subgridDisplayBadge.classList.contains("interactive"), 76 "subgrid display badge is interactive." 77 ); 78 });