<!DOCTYPE html>
<html>
<head>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.dumpChildFramesAsText();
    testRunner.waitUntilDone();
}
</script>
</head>
<body>
<p>Tests that a Content-Security-Policy HTTP header is ignored when delivered with a Microsoft Word document. This test PASSED if you see PASS below and there is no warning logged to the console. Otherwise, it FAILED.</p>
<iframe id="frame"></iframe>
<script>
var iframe = document.getElementById("frame");
iframe.onload = function () {
    if (window.testRunner)
        testRunner.notifyDone();
};
iframe.src = "resources/word-document-with-csp-block-frame-ancestors.php";
</script>
</body>
</html>
