<html>
<head>
<meta id="test" name="foo" scheme="bar" http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
You should see 5 lines with "SUCCESS" below:
<script>
if (window.testRunner)
    testRunner.dumpAsText();

function checkExpected(actual, expected)
{
    if (actual != expected)
        document.writeln("<p>FAILURE: expected \"" + expected + "\", actual \"" + actual + "\"</p>");
    else
        document.writeln("<p>SUCCESS (value: \"" + actual + "\")</p>");
}

var metaTag = document.getElementById("test");
checkExpected(metaTag, "[object HTMLMetaElement]");
checkExpected(metaTag.name, "foo");
checkExpected(metaTag.scheme, "bar");
checkExpected(metaTag.httpEquiv, "content-type");
checkExpected(metaTag.content, "text/html; charset=UTF-8");
</script>

</body>
</html>
