| <!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-xmlhttprequest-redirect-to-blocked</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src='../support/logTest.sub.js?logs=["PASS XMLHttpRequest.send() did not follow the disallowed redirect.","TEST COMPLETE","violated-directive=connect-src"]'></script> |
| <script src="../support/alertAssert.sub.js?alerts=[]"></script> |
| <script id="inject_here"></script> |
| </head> |
| |
| <body> |
| <script> |
| window.addEventListener('securitypolicyviolation', function(e) { |
| log("violated-directive=" + e.violatedDirective); |
| }); |
| |
| var xhr = new XMLHttpRequest; |
| try { |
| xhr.open("GET", "/common/redirect.py?location=http://www1.{{host}}:{{ports[http][0]}}/content-security-policy/support/fail.asis", true); |
| } catch (e) { |
| log("FAIL " + "XMLHttpRequest.open() should not throw an exception."); |
| } |
| xhr.onload = function() { |
| //cons/**/ole.log(xhr.responseText); |
| if(xhr.responseText == "FAIL") { |
| log("FAIL " + "XMLHttpRequest.send() should fail to follow the disallowed redirect."); |
| } else { |
| log("PASS " + "XMLHttpRequest.send() did not follow the disallowed redirect."); |
| } |
| log("TEST COMPLETE"); |
| }; |
| xhr.onerror = function() { |
| log("PASS " + "XMLHttpRequest.send() did not follow the disallowed redirect."); |
| log("TEST COMPLETE"); |
| }; |
| xhr.send(); |
| |
| </script> |
| <div id="log"></div> |
| </body> |
| |
| </html> |