<!DOCTYPE html>
<html>
<head>
    <script type="text/javascript">
        function runTests()
        {
            if (window.testRunner)
                testRunner.dumpAsText();

            alert("* The line below should have no text");
            alert();

            alert("* The line below should have the text 'undefined'");
            alert(undefined);

            alert("* The line below should have the text 'null'");
            alert(null);

            alert("* The lines below should have no text");
            confirm();
            confirm(undefined);

            alert("* The line below should have the text 'null'");
            confirm(null);

            alert("* The lines below should have no text and no default text");
            prompt();
            prompt(undefined, undefined);

             alert("* The line below should have the text 'null' and the default text null");
            prompt(null, null);
        }
    </script>
</head>
<body onload="runTests()">
</body>
</html>
