<!DOCTYPE HTML PUBLIC "-//W3O//DTD W3 HTML 2.0//EN">
<html>
    <script>
        function runTest()
        {
            if (window.testRunner)
                testRunner.dumpAsText();
            var result = "TEST FAILED";
            var image = document.getElementById("image");
            if (image) {
                if (image.tagName == "IMG" && image.constructor.name == "HTMLImageElement")
                    result = "TEST PASSED";
            }
            document.getElementById("result").firstChild.data = result;
        }
    </script>
    <body onload="runTest()">
        <image id="image"/>
        <p>This tests that the parser parses 'image' as img and constructs a HTMLImageElement.</p>
        <p id="result">TEST NOT RUN</p>
    </body>
</html>
