summaryrefslogtreecommitdiffstats
path: root/devtools/client/inspector/markup/test/browser_markup_anonymous_03.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--devtools/client/inspector/markup/test/browser_markup_anonymous_03.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/devtools/client/inspector/markup/test/browser_markup_anonymous_03.js b/devtools/client/inspector/markup/test/browser_markup_anonymous_03.js
new file mode 100644
index 0000000000..2d251a884a
--- /dev/null
+++ b/devtools/client/inspector/markup/test/browser_markup_anonymous_03.js
@@ -0,0 +1,41 @@
+/* Any copyright is dedicated to the Public Domain.
+http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+// Test shadow DOM content in the markupview.
+// Note that many features are not yet enabled, but basic listing
+// of elements should be working.
+const TEST_URL = URL_ROOT + "doc_markup_anonymous.html";
+
+add_task(async function () {
+ const { inspector } = await openInspectorForURL(TEST_URL);
+
+ const shadowHostFront = await getNodeFront("#shadow", inspector.markup);
+ is(shadowHostFront.numChildren, 3, "Children of the shadow host are correct");
+
+ await inspector.markup.expandNode(shadowHostFront);
+ await waitForMultipleChildrenUpdates(inspector);
+
+ const shadowContainer = inspector.markup.getContainer(shadowHostFront);
+ const containers = shadowContainer.getChildContainers();
+
+ info("Checking the ::before pseudo element");
+ const before = containers[1].node;
+ await isEditingMenuDisabled(before, inspector);
+
+ info("Checking shadow dom children");
+ const shadowRootFront = containers[0].node;
+ const children = await inspector.walker.children(shadowRootFront);
+
+ is(shadowRootFront.numChildren, 2, "Children of the shadow root are counted");
+ is(children.nodes.length, 2, "Children returned from walker");
+
+ info("Checking the <h3> shadow element");
+ const shadowChild1 = children.nodes[0];
+ await isEditingMenuEnabled(shadowChild1, inspector);
+
+ info("Checking the <select> shadow element");
+ const shadowChild2 = children.nodes[1];
+ await isEditingMenuEnabled(shadowChild2, inspector);
+});