Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / http / tests / xmlhttprequest / simple-cross-origin-denied-events-post-sync.html
blobf0b2e0dff1c0661064f1bbec9e63c38576682fce
1 <html>
2 <body>
3 <p>Test that a simple cross-origin request to a server that responds (but does not permit cross-origin requests) is indistinguishable from one that does not exist. Should say PASS:</p>
4 <pre id='console'></pre>
5 <script type="text/javascript">
6 if (window.testRunner)
7 testRunner.dumpAsText();
9 function log(message)
11 document.getElementById('console').appendChild(document.createTextNode(message + "\n"));
14 var xhr;
15 var logExisting;
16 var logMissing;
18 xhr = new XMLHttpRequest;
19 xhr.onreadystatechange = function() { log("onreadystatechange " + xhr.readyState) }
20 xhr.onload = function() { log("onload") }
21 xhr.onloadstart = function() { log("onloadstart") }
22 xhr.onprogress = function() { log("onprogress") }
23 xhr.onerror = function() { log("onerror") }
24 xhr.upload.onabort = function() { log("upload.onabort") }
25 xhr.upload.onerror = function() { log("upload.onerror") }
26 xhr.upload.onload = function() { log("upload.onload") }
27 xhr.upload.onloadstart = function() { log("upload.onloadstart") }
28 xhr.upload.onprogress = function() { log("upload.onprogress") }
29 try {
30 xhr.open("GET", "http://localhost:8000/xmlhttprequest/resources/reply.xml", false);
31 xhr.setRequestHeader("Content-Type", "text/plain");
32 xhr.send("Text");
33 } catch (ex) {
34 log("Exception thrown: " + ex.name);
37 if (xhr.responseText.length)
38 alert("FAIL: Response is not empty, " + xhr.responseText);
40 logExisting = document.getElementById('console').innerHTML;
41 document.getElementById('console').innerHTML = "";
43 xhr = new XMLHttpRequest;
44 xhr.onreadystatechange = function() { log("onreadystatechange " + xhr.readyState) }
45 xhr.onload = function() { log("onload") }
46 xhr.onloadstart = function() { log("onloadstart") }
47 xhr.onprogress = function() { log("onprogress") }
48 xhr.onerror = function() { log("onerror") }
49 xhr.upload.onabort = function() { log("upload.onabort") }
50 xhr.upload.onerror = function() { log("upload.onerror") }
51 xhr.upload.onload = function() { log("upload.onload") }
52 xhr.upload.onloadstart = function() { log("upload.onloadstart") }
53 xhr.upload.onprogress = function() { log("upload.onprogress") }
54 try {
55 xhr.open("GET", "http://localhost:7/", false); // A port that will likely refuse the connection.
56 xhr.setRequestHeader("Content-Type", "text/plain");
57 xhr.send("Text");
58 } catch (ex) {
59 log("Exception thrown: " + ex.name);
62 if (xhr.responseText.length)
63 alert("FAIL: Response is not empty, " + xhr.responseText);
65 logMissing = document.getElementById('console').innerHTML;
66 document.getElementById('console').innerHTML = "";
68 if (logMissing == logExisting)
69 log("PASS");
70 else {
71 log("FAIL. Responding server:");
72 document.getElementById('console').innerHTML += logExisting;
73 log("Non-existent server:");
74 document.getElementById('console').innerHTML += logMissing;
76 </script>
77 </body>
78 </html>