/* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; // Test that the breadcrumbs widget content for namespaced elements is correct. const XHTML = ` `; const TEST_URI = "data:application/xhtml+xml;charset=utf-8," + encodeURI(XHTML); const NODES = [ { selector: "clipPath", nodes: ["svg:svg", "svg:clipPath"], nodeName: "svg:clipPath", title: "svg:clipPath#clip", }, { selector: "circle", nodes: ["svg:svg", "svg:circle"], nodeName: "svg:circle", title: "svg:circle", }, ]; add_task(async function () { const { inspector } = await openInspectorForURL(TEST_URI); const container = inspector.panelDoc.getElementById("inspector-breadcrumbs"); for (const node of NODES) { info("Testing node " + node.selector); info("Selecting node and waiting for breadcrumbs to update"); const breadcrumbsUpdated = inspector.once("breadcrumbs-updated"); await selectNode(node.selector, inspector); await breadcrumbsUpdated; info("Performing checks for node " + node.selector); const checkedButton = container.querySelector("button[checked]"); const labelTag = checkedButton.querySelector( ".breadcrumbs-widget-item-tag" ); is( labelTag.textContent, node.nodeName, "Node " + node.selector + " has the expected tag name" ); is( checkedButton.getAttribute("title"), node.title, "Node " + node.selector + " has the expected tooltip" ); } });