open-send-during-abort.htm (863B)
1 <!doctype html> 2 <title>XMLHttpRequest: open() during abort()</title> 3 <script src="/resources/testharness.js"></script> 4 <script src="/resources/testharnessreport.js"></script> 5 <div id="log"></div> 6 <script> 7 async_test(t => { 8 let result = [], 9 client = new XMLHttpRequest(), 10 expected = [1, 4, 1, 'hello'] 11 client.open("GET", "data:text/plain,") 12 result.push(client.readyState) 13 client.send() 14 client.onreadystatechange = t.step_func(() => { 15 client.onreadystatechange = null 16 result.push(client.readyState) 17 client.open("GET", "data:text/plain,hello") 18 client.onload = t.step_func_done(() => { 19 result.push(client.responseText) 20 assert_array_equals(result, expected) 21 }) 22 client.send() 23 }) 24 client.abort() 25 result.push(client.readyState) // surprise! should not be "unsent" even though we called abort() 26 }) 27 </script>