From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- .../rules/test/browser_rules_variables_host.js | 76 ++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 devtools/client/inspector/rules/test/browser_rules_variables_host.js (limited to 'devtools/client/inspector/rules/test/browser_rules_variables_host.js') diff --git a/devtools/client/inspector/rules/test/browser_rules_variables_host.js b/devtools/client/inspector/rules/test/browser_rules_variables_host.js new file mode 100644 index 0000000000..a8fe04d7b6 --- /dev/null +++ b/devtools/client/inspector/rules/test/browser_rules_variables_host.js @@ -0,0 +1,76 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// Test matched selectors and variables defined for a :host selector. + +const SHADOW_DOM = ` +test`; + +const TEST_PAGE = ` +
+ `; + +const TEST_URI = `https://example.com/document-builder.sjs?html=${encodeURIComponent( + TEST_PAGE +)}`; + +add_task(async function () { + await addTab(TEST_URI); + const { inspector, view } = await openRuleView(); + + info("Select the host and check that :host is matching"); + await selectNode("#host", inspector); + let selector = getRuleViewRuleEditor(view, 1).selectorText; + is( + selector.querySelector(".matched").textContent, + ":host", + ":host should be matched." + ); + + info("Select a shadow dom element and check that :host is matching"); + const nodeFront = await getNodeFrontInShadowDom( + ".test-span", + "#host", + inspector + ); + await selectNode(nodeFront, inspector); + + selector = getRuleViewRuleEditor(view, 3).selectorText; + is( + selector.querySelector(".matched").textContent, + ":host", + ":host should be matched." + ); + + info("Check that the variable from :host is correctly applied"); + const setColor = getRuleViewProperty( + view, + "span", + "color" + ).valueSpan.querySelector(".ruleview-variable"); + is(setColor.textContent, "--test-color", "--test-color is set correctly"); + is( + setColor.dataset.variable, + "--test-color = red", + "--test-color's dataset.variable is set correctly" + ); + const previewTooltip = await assertShowPreviewTooltip(view, setColor); + ok( + previewTooltip.panel.textContent.includes("--test-color = red"), + "CSS variable preview tooltip shows the expected CSS variable" + ); + await assertTooltipHiddenOnMouseOut(previewTooltip, setColor); +}); -- cgit v1.2.3