| <html> |
| <body> |
| <pre id='console'></pre> |
| <script type="text/javascript"> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| function log(message) |
| { |
| document.getElementById('console').appendChild(document.createTextNode(message + "\n")); |
| } |
| |
| var xhr; |
| |
| function testAllowed(name) |
| { |
| if (xhr.getResponseHeader(name)) |
| log("PASS: Response header " + name + " allowed."); |
| else |
| log("FAIL: Response header " + name + " not allowed."); |
| } |
| |
| function testDenied(name) |
| { |
| if (!xhr.getResponseHeader(name)) |
| log("PASS: Response header " + name + " denied."); |
| else |
| log("FAIL: Response header " + name + " not denied."); |
| } |
| |
| |
| xhr = new XMLHttpRequest; |
| xhr.open("GET", "http://localhost:8000/xmlhttprequest/resources/access-control-basic-whitelist-response-headers.cgi", false); |
| xhr.send(); |
| |
| // Test getResponseHeader() |
| testAllowed("cache-control"); |
| testAllowed("content-language"); |
| testAllowed("content-type"); |
| testAllowed("expires"); |
| testAllowed("last-modified"); |
| testAllowed("pragma"); |
| testDenied("x-webkit"); |
| |
| // Test getAllResponseHeaders() |
| if (!xhr.getAllResponseHeaders().match("foobar")) |
| log("PASS: Non-whitelisted headers not passed to getAllResponseHeaders()."); |
| else |
| log("FAIL: Non-whitelisted headers passed to getAllResponseHeaders()."); |
| </script> |
| </body> |
| </html> |