<!DOCTYPE html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
async_test(t => {
const xhr = new XMLHttpRequest();
xhr.open('GET', 'resources/get.txt');
xhr.onload = t.step_func(() => {
assert_equals(xhr.responseText, 'PASS');
t.done();
});
assert_throws_dom('SyntaxError', () => {
xhr.open('FOO BAR', 'nonexistent');
}, 'open() should throw for a SyntaxError for an invalid method');
xhr.send();
}, 'open() with an invalid method is no-op');
async_test(t => {
const xhr = new XMLHttpRequest();
xhr.open('GET', 'resources/get.txt');
xhr.onload = t.step_func(() => {
assert_equals(xhr.responseText, 'PASS');
t.done();
});
assert_throws_dom('SecurityError', () => {
xhr.open('CONNECT', 'nonexistent');
}, 'open() should throw for a SecurityError for a forbidden method');
xhr.send();
}, 'open() with a forbidden method is no-op');
async_test(t => {
const xhr = new XMLHttpRequest();
xhr.open('GET', 'resources/get.txt');
xhr.onload = t.step_func(() => {
assert_equals(xhr.responseText, 'PASS');
t.done();
});
assert_throws_dom('SyntaxError', () => {
xhr.open('GET', 'http://localhost:foobar/');
}, 'open() should throw for a SyntaxError for an invalid URL');
xhr.send();
}, 'open() with an invalid URL is no-op');
</script>