2012-02-07 10:57:17 -08:00
|
|
|
/* Any copyright is dedicated to the Public Domain.
|
|
|
|
* http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
|
|
|
|
// A for-of loop in Web Console code can loop over a content NodeList.
|
|
|
|
|
2012-04-15 13:10:00 -07:00
|
|
|
const TEST_URI = "http://example.com/browser/browser/devtools/webconsole/test/test-for-of.html";
|
2012-02-07 10:57:17 -08:00
|
|
|
|
|
|
|
function test() {
|
|
|
|
addTab(TEST_URI);
|
2012-05-25 03:28:47 -07:00
|
|
|
browser.addEventListener("load", function onLoad() {
|
|
|
|
browser.removeEventListener("load", onLoad, true);
|
|
|
|
openConsole(null, testForOf);
|
|
|
|
}, true);
|
2012-02-07 10:57:17 -08:00
|
|
|
}
|
|
|
|
|
2012-05-25 03:28:47 -07:00
|
|
|
function testForOf(hud) {
|
2012-02-07 10:57:17 -08:00
|
|
|
var jsterm = hud.jsterm;
|
|
|
|
jsterm.execute("{ [x.tagName for (x of document.body.childNodes) if (x.nodeType === 1)].join(' '); }");
|
|
|
|
|
2012-05-25 03:28:47 -07:00
|
|
|
waitForSuccess({
|
|
|
|
name: "jsterm output displayed",
|
|
|
|
validatorFn: function()
|
|
|
|
{
|
|
|
|
return hud.outputNode.querySelector(".webconsole-msg-output");
|
|
|
|
},
|
|
|
|
successFn: function()
|
|
|
|
{
|
|
|
|
let node = hud.outputNode.querySelector(".webconsole-msg-output");
|
|
|
|
ok(/H1 DIV H2 P/.test(node.textContent),
|
|
|
|
"for-of loop should find all top-level nodes");
|
|
|
|
finishTest();
|
|
|
|
},
|
|
|
|
failureFn: finishTest,
|
|
|
|
});
|
2012-02-07 10:57:17 -08:00
|
|
|
}
|