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 : import { ProgressEvent } from '../../../lib/whatwg-xhr.js'; 4 : 2 : 5 [ + ]: 2 : export default (activeURL) => { 6 : 1 : 7 : 1 : let xhr = new XMLHttpRequest(); 8 : 1 : let timeout; 9 : 1 : 10 [ + ]: 1 : xhr.onloadstart = (e) => { 11 : 1 : 12 : 1 : assert(e instanceof ProgressEvent); 13 : 1 : assert.strictEqual(e.type, 'loadstart'); 14 : 1 : assert.strictEqual(xhr.readyState, 1); 15 : 1 : 16 : 1 : xhr.onloadstart = null; 17 : 1 : xhr.onreadystatechange = null; 18 : 1 : 19 : 1 : clearTimeout(timeout); 20 : 1 : }; 21 : 1 : 22 : 1 : timeout = setTimeout(() => { 23 : 0 : assert(false, 'onloadstart not called after 500 ms'); 24 : 1 : }, 500); 25 : 1 : 26 : 1 : xhr.open('GET', `${activeURL}/well-formed.xml`); 27 : 1 : xhr.send(); 28 : 1 : } 29 : 2 : 30 : 2 : /* 31 : 2 : * event-loadstart.any.js 32 : 2 : * 33 : 2 : 34 : 2 : // META: title=XMLHttpRequest: loadstart event 35 : 2 : 36 : 2 : var test = async_test(); 37 : 2 : test.step(function () { 38 : 2 : var client = new XMLHttpRequest(); 39 : 2 : client.onloadstart = test.step_func(function (e) { 40 : 2 : assert_true(e instanceof ProgressEvent); 41 : 2 : assert_equals(e.type, "loadstart"); 42 : 2 : assert_equals(client.readyState, 1); 43 : 2 : test.done(); 44 : 2 : }); 45 : 2 : test.step_timeout(function () { 46 : 2 : assert_unreached("onloadstart not called after 500 ms"); 47 : 2 : }, 500); 48 : 2 : client.open("GET", "resources/well-formed.xml"); 49 : 2 : client.send(null); 50 : 2 : }); 51 : 2 : 52 : 2 : * 53 : 2 : * event-loadstart.any.js 54 : 2 : */