<html>
<head>
<script>
function print(message) {
    var paragraph = document.createElement("p");
    paragraph.appendChild(document.createTextNode(message));
    document.getElementById("console").appendChild(paragraph);
}

function test() {
    if (window.testRunner) {
        testRunner.dumpAsText();
    }

    var pass = true;
    
    var embeds = document.embeds;
    var plugins = document.plugins;
    
    if (embeds[0].id != 'embed0' || embeds[1].id != 'embed1')
        pass = false;
    if (plugins[0] != embeds[0] || plugins[1] != embeds[1])
        pass = false;

    print(pass ? "PASS" : "FAIL");
}
</script>
</head>
<body onload="test();">
<p>This test checks for whether document.plugins matches document.embeds.</p>
<p>If the test passes, you will see a pass message below.</p>
<hr>
<div id='console'></div>
<embed id = 'embed0' width=0 height=0>
<embed id = 'embed1' width=0 height=0>
</body>
</html>
