Branch data Line data Source code
1 [ + ]: 2 : import assert from 'node:assert/strict'; 2 : 2 : import { XMLHttpRequest } from '../../../lib/whatwg-xhr.js'; 3 : 2 : 4 : 2 : import { prepare_xhr_for_event_order_test } from './xmlhttprequest-event-order.js?q7'; 5 : 2 : import { assert_xhr_event_order_matches } from './xmlhttprequest-event-order.js?q7'; 6 : 2 : 7 [ + ]: 2 : export default (activeURL) => { 8 : 1 : 9 : 1 : let hasrun = false; 10 : 1 : let xhr = new XMLHttpRequest(); 11 : 1 : 12 : 1 : xhr.open('GET', `${activeURL.replace('/resources', '') + '/folder.txt'}`, false); 13 : 1 : 14 [ + ]: 1 : setTimeout(() => { hasrun = true }, 0); 15 : 1 : 16 [ + ]: 1 : xhr.onreadystatechange = () => { 17 : 1 : assert.strictEqual(xhr.readyState, 4); 18 : 1 : assert(!hasrun); 19 : 1 : }; 20 : 1 : 21 : 1 : xhr.send(); 22 : 1 : xhr.onreadystatechange = null; 23 : 1 : } 24 : 2 : 25 : 2 : /* 26 : 2 : * send-sync-timeout.htm 27 : 2 : * 28 : 2 : 29 : 2 : <!doctype html> 30 : 2 : <html> 31 : 2 : <head> 32 : 2 : <title>XMLHttpRequest: timeout during sync send() should not run</title> 33 : 2 : <script src="/resources/testharness.js"></script> 34 : 2 : <script src="/resources/testharnessreport.js"></script> 35 : 2 : <link rel="help" href="https://xhr.spec.whatwg.org/#the-send()-method"/> 36 : 2 : </head> 37 : 2 : <body> 38 : 2 : <div id="log"></div> 39 : 2 : <script> 40 : 2 : var test = async_test(), 41 : 2 : hasrun = false 42 : 2 : test.step(function() { 43 : 2 : client = new XMLHttpRequest() 44 : 2 : client.open("GET", "folder.txt", false) 45 : 2 : test.step_timeout(() => { hasrun = true }, 0) 46 : 2 : client.onreadystatechange = function() { 47 : 2 : test.step(function() { 48 : 2 : assert_equals(client.readyState, 4) 49 : 2 : assert_false(hasrun) 50 : 2 : }) 51 : 2 : } 52 : 2 : client.send(null) 53 : 2 : test.done() 54 : 2 : }) 55 : 2 : </script> 56 : 2 : </body> 57 : 2 : </html> 58 : 2 : 59 : 2 : * 60 : 2 : * send-sync-timeout.htm 61 : 2 : */