| <html> |
| <head> |
| <title>Test XMLHttpRequest exceptions</title> |
| <meta http-equiv="content-type" content="text/html;charset=utf-8"> |
| <body> |
| <p>Test that XMLHttpRequest raises exceptions when it should.</p> |
| <script> |
| |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| var console_messages = document.createElement("ul"); |
| document.body.appendChild(console_messages); |
| |
| function log(message) |
| { |
| var item = document.createElement("li"); |
| item.appendChild(document.createTextNode(message)); |
| console_messages.appendChild(item); |
| } |
| |
| function shouldThrow(_a, _e) { |
| var exception; |
| var _av; |
| try { |
| _av = eval(_a); |
| } catch (e) { |
| exception = e.description ? e.description : e; |
| } |
| |
| var _ev; |
| if (_e) |
| _ev = eval(_e); |
| |
| if (exception) { |
| if (typeof _e == "undefined" || exception == _ev) |
| log("PASS: " + _a + " threw exception " + exception + "."); |
| else |
| log("FAIL: " + _a + " should throw exception " + _ev + ". Threw exception " + exception + "."); |
| } else if (typeof _av == "undefined") |
| log("FAIL: " + _a + " should throw exception " + _e + ". Was undefined."); |
| else |
| log("FAIL: " + _a + " should throw exception " + _e + ". Was " + _av + "."); |
| } |
| |
| // ------------------------- |
| |
| if (window.XMLHttpRequest) { |
| req = new XMLHttpRequest(); |
| } else { |
| try { |
| req = new ActiveXObject("Msxml2.XMLHTTP"); |
| } catch (ex) { |
| req = new ActiveXObject("Microsoft.XMLHTTP"); |
| } |
| } |
| log("new XMLHttpRequest()"); |
| |
| shouldThrow('req.setRequestHeader("Foo", "bar")'); |
| shouldThrow('req.send(null)'); |
| |
| req.open('GET', 'resources/zero-length.txt', false); |
| log("open()"); |
| |
| shouldThrow('req.setRequestHeader()'); |
| shouldThrow('req.setRequestHeader("Foo")'); |
| |
| req.send(null); |
| log("send()"); |
| |
| shouldThrow('req.send(null)'); |
| shouldThrow('req.overrideMimeType("text/plain")'); |
| shouldThrow('req.setRequestHeader("Foo", "bar")'); |
| shouldThrow('req.getResponseHeader()'); |
| |
| shouldThrow('req.open()'); |
| shouldThrow('req.open(null)'); |
| |
| </script> |
| </body> |
| </html> |