<!DOCTYPE html>
<html>

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

<body>
    <script>
        window.addEventListener('securitypolicyviolation', function(e) {
            log("violated-directive=" + e.violatedDirective);
        });

        try {
            var es = new EventSource("http://{{domains[www1]}}:{{ports[http][0]}}/content-security-policy/connect-src/resources/simple-event-stream");
            // Firefox and Chrome don't throw an exception and takes some time to close async
            if (es.readyState == EventSource.CONNECTING) {
                setTimeout( function() {
                    es.readyState != EventSource.CLOSED ? log("allowed") : log("blocked");
                }, 1000);
            } else if (es.readyState == EventSource.CLOSED) {
                log("blocked");
            } else {
                log("allowed");
            }
        } catch (e) {
            log("blocked");
        }
    </script>
    <div id="log"></div>
</body>

</html>
