<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    // DumpRenderTree requires waitUntilDone for this test even though it's not needed.
    testRunner.waitUntilDone();
    testRunner.setCanOpenWindows();
    testRunner.setCloseRemainingWindowsWhenComplete(true);
}
var w = window.open("data:text/html,foo");
w.print();
w.close();

window.onload = function() {
    if (window.testRunner)
        testRunner.notifyDone();
}
</script>
This test passes if it doesn't crash.
