<!DOCTYPE html>
<script>
if (window.internals)
    internals.settings.setContentDispositionAttachmentSandboxEnabled(true);

if (window.testRunner) {
    testRunner.waitUntilDone();

    // The doubly-nested setTimeout() is meant to account for two timers in the object fallback content rendering process.
    // We can't rely on object's onerror event since we cannot run script in the sandboxed frame, so we must wait for the
    // post-layout timer followed by the embedded objects update timer to ensure that fallback content has been rendered.
    window.addEventListener('load', function() {
        window.setTimeout(function() {
            window.setTimeout(function() {
                testRunner.notifyDone();
            }, 0);
        }, 0);
    });
}
</script>
<p>This test verifies that plug-ins are disabled when 'Content-Disposition: attachment' sandboxing is enabled. 'PASS' is displayed in the &lt;iframe&gt; below if the test passes.</p>
<iframe src="resources/plugins-frame.php"></iframe>
