Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
// Bug 1309212 - Make sure info-bar is displayed with dimensions for text nodes.
const TEST_URI = URL_ROOT + "doc_inspector_infobar_textnode.html";
add_task(async function () {
const { inspector, highlighterTestFront } =
await openInspectorForURL(TEST_URI);
const { walker } = inspector;
info("Retrieve the children of #textnode-container");
const div = await walker.querySelector(
walker.rootNode,
"#textnode-container"
);
const { nodes } = await inspector.walker.children(div);
// Children 0, 2 and 4 are text nodes, for which we expect to see an infobar containing
// dimensions.
// Regular text node.
info("Select the first text node");
await selectNode(nodes[0], inspector, "test-highlight");
await checkTextNodeInfoBar(highlighterTestFront);
// Whitespace-only text node.
info("Select the second text node");
await selectNode(nodes[2], inspector, "test-highlight");
await checkTextNodeInfoBar(highlighterTestFront);
// Regular text node.
info("Select the third text node");
await selectNode(nodes[4], inspector, "test-highlight");
await checkTextNodeInfoBar(highlighterTestFront);
});
async function checkTextNodeInfoBar(highlighterTestFront) {
const tag = await highlighterTestFront.getHighlighterNodeTextContent(
"box-model-infobar-tagname"
);
is(tag, "#text", "node display name is #text");
const dims = await highlighterTestFront.getHighlighterNodeTextContent(
"box-model-infobar-dimensions"
);
// Do not assert dimensions as they might be platform specific.
ok(!!dims, "node has dims");
}