<!DOCTYPE html>
<html>
<body>
<div>
This test passes if it does not trip an assert in debug builds.
It ensures a readystatechange event can't get dispatched until after a plugin is fully removed.
</div>
<embed id="viewer" src="resources/simple_blank.swf"></embed>
<script>
if (window.testRunner)
    testRunner.dumpAsText();

var i = 0;
document.addEventListener('readystatechange', function() {
    if (i == 1) {
        try {
            document.body.appendChild(document.getElementById('viewer'));
        }
        catch (e) {
            alert('PASS: element could not be re-appended');
       }
    }
    i++;
});

window.addEventListener('DOMContentLoaded', function() {
    document.body.removeChild(document.getElementById('viewer'));
});

// FIXME: This shouldn't be needed, but it's here to make our whitespace text node
// creation deterministic in the face of lazily creating the render tree.
document.body.offsetHeight;
</script>
</body>
</html>
