diff --git a/mozilla/layout/html/tests/DumpTree.js b/mozilla/layout/html/tests/DumpTree.js new file mode 100644 index 00000000000..7dec1e370ee --- /dev/null +++ b/mozilla/layout/html/tests/DumpTree.js @@ -0,0 +1,35 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-*/ + +function traverse(node, indent) +{ + indent += " "; + var type = node.nodeType; + + // if it's an element dump the tag and recurse the children + if (type == Node.ELEMENT_NODE) { + dump(indent + "<" + node.tagName + ">\n"); + + // go through the children + if (node.hasChildNodes()) { + var children = node.childNodes; + var i, length = children.length; + for (i = 0; i < length; i++) { + var child = children[i]; + traverse(child, indent); + } + dump(indent + "\n"); + } + } + // it's just text, no tag, dump "Text" + else if (type == Node.TEXT_NODE) { + dump(indent + node.data + "\n"); + } +} + +function dumpTree() +{ + var node = document.documentElement; + dump("Document Tree:\n"); + traverse(node, ""); + dump("\n"); +}