Various tests for the header element.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


<header> closes <p>:
PASS header1.parentNode.nodeName == "p" is false
<p> does not close <header>:
PASS p1.parentNode.nodeName is "HEADER"
<header> can be nested inside <header> or <footer>:
PASS header3.parentNode.id is "header2"
PASS header5.parentNode.id is "footer1"
Residual style:
PASS getWeight("header4") is "bold"
PASS getWeight("span1") is "bold"
FormatBlock:
PASS document.getElementById("span2").parentNode.nodeName is "HEADER"
PASS successfullyParsed is true

TEST COMPLETE

