<!doctype html> <title>XMLHttpRequest: open() during abort()</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <div id="log"></div> <script> async_test(t => { let result = [], client = new XMLHttpRequest(), expected = [1, 4, 1, 'hello'] client.open("GET", "data:text/plain,") result.push(client.readyState) client.send() client.onreadystatechange = t.step_func(() => { client.onreadystatechange = null result.push(client.readyState) client.open("GET", "data:text/plain,hello") client.onload = t.step_func_done(() => { result.push(client.responseText) assert_array_equals(result, expected) }) client.send() }) client.abort() result.push(client.readyState) // surprise! should not be "unsent" even though we called abort() }) </script>