blob: 8b344a58f81f5d6d71de701ec414d5b12467372b [file] [log] [blame]
Anne van Kesterene2654272017-02-23 13:57:301<!doctype html>
2<title>XMLHttpRequest: loadstart event corner cases</title>
3<script src=/resources/testharness.js></script>
4<script src=/resources/testharnessreport.js></script>
5<div id=log></div>
6<script>
7async_test(t => {
8 const client = new XMLHttpRequest
9 client.onloadstart = t.step_func(() => {
Stephen McGruer3696f222020-01-23 19:11:5810 assert_throws_dom("InvalidStateError", () => client.setRequestHeader("General", "Organa"))
11 assert_throws_dom("InvalidStateError", () => client.withCredentials = true)
12 assert_throws_dom("InvalidStateError", () => client.send())
Anne van Kesterene2654272017-02-23 13:57:3013 client.onloadstart = null
14 client.open("GET", "data:,BB-8")
15 client.send()
16 })
17 client.onload = t.step_func_done(() => {
18 assert_equals(client.responseText, "BB-8")
19 })
20 client.open("GET", "data:,R2-D2")
21 client.send()
22}, "open() during loadstart")
23
24async_test(t => {
25 const client = new XMLHttpRequest
26 let abortFired = false
27 client.onloadstart = t.step_func_done(() => {
28 assert_equals(client.readyState, 1)
29 client.abort()
30 assert_true(abortFired)
31 assert_equals(client.readyState, 0)
32 })
33 client.onabort = t.step_func(() => {
34 abortFired = true
35 assert_equals(client.readyState, 4)
36 })
37 client.open("GET", "data:,K-2SO")
38 client.send()
39}, "abort() during loadstart")
40</script>