<!DOCTYPE html>
<html>

<head>
    <!-- Programmatically converted from a WebKit Reftest, please forgive resulting idiosyncracies.-->
    <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; connect-src 'self'; child-src 'self';">
    <title>blob-urls-do-not-match-self</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <script src='../support/logTest.sub.js?logs=["violated-directive=script-src-elem"]'></script>
    <script src='../support/alertAssert.sub.js?alerts=[]'></script>
</head>

<body>
    <p>
        blob: URLs are same-origin with the page in which they were created, but explicitly do not match the &apos;self&apos; or '*' source in CSP directives because they are more akin to 'unsafe-inline' content.
    </p>
    <script>
        window.addEventListener('securitypolicyviolation', function(e) {
            log("violated-directive=" + e.violatedDirective);
        });
        function fail() {
            alert_assert("FAIL!");
        }
        var b = new Blob(['fail();'], {
            type: 'application/javascript'
        });
        var script = document.createElement('script');
        script.src = URL.createObjectURL(b);
        document.body.appendChild(script);

    </script>
    <div id="log"></div>
</body>

</html>
