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 : export default (activeURL) => { 5 : 1 : 6 : 1 : let xhr = new XMLHttpRequest(); 7 : 1 : 8 [ + ]: 1 : xhr.onreadystatechange = () => { 9 : 7 : 10 [ + ]: 7 : if(xhr.readyState === 4){ 11 : 1 : 12 : 1 : assert.strictEqual(xhr.getResponseHeader('Trailer'), 'X-Test-Me'); 13 : 1 : assert.strictEqual(xhr.getResponseHeader('X-Test-Me'), null); 14 : 1 : assert.strictEqual(xhr.getAllResponseHeaders().indexOf('Trailer header value'), -1); 15 : 1 : 16 : 1 : assert(/trailer:\sX-Test-Me/.test( xhr.getAllResponseHeaders() )); 17 : 1 : 18 : 1 : assert.strictEqual(xhr.responseText, 'First chunk\r\nSecond chunk\r\nYet another (third) chunk\r\nYet another (fourth) chunk\r\n'); 19 : 1 : } 20 : 1 : }; 21 : 1 : 22 : 1 : xhr.open('GET', `${activeURL}/chunked.py`); 23 : 1 : xhr.send(); 24 : 1 : } 25 : 2 : 26 : 2 : /* 27 : 2 : * getresponseheader-chunked-trailer.htm 28 : 2 : * 29 : 2 : 30 : 2 : <!DOCTYPE html> 31 : 2 : <html> 32 : 2 : <head> 33 : 2 : <title>XMLHttpRequest: getResponseHeader() and HTTP trailer</title> 34 : 2 : <script src="/resources/testharness.js"></script> 35 : 2 : <script src="/resources/testharnessreport.js"></script> 36 : 2 : <link rel="help" href="https://xhr.spec.whatwg.org/#dom-xmlhttprequest-getresponseheader" data-tested-assertations="/following::OL[1]/LI[4] /following::OL[1]/LI[5] /following::OL[1]/LI[6]" /> 37 : 2 : </head> 38 : 2 : <body> 39 : 2 : <div id="log"></div> 40 : 2 : <script> 41 : 2 : var test = async_test() 42 : 2 : test.step(function() { 43 : 2 : var client = new XMLHttpRequest() 44 : 2 : client.onreadystatechange = function() { 45 : 2 : test.step(function() { 46 : 2 : if(client.readyState == 4) { 47 : 2 : assert_equals(client.getResponseHeader('Trailer'), 'X-Test-Me') 48 : 2 : assert_equals(client.getResponseHeader('X-Test-Me'), null) 49 : 2 : assert_equals(client.getAllResponseHeaders().indexOf('Trailer header value'), -1) 50 : 2 : assert_regexp_match(client.getAllResponseHeaders(), /trailer:\sX-Test-Me/) 51 : 2 : assert_equals(client.responseText, "First chunk\r\nSecond chunk\r\nYet another (third) chunk\r\nYet another (fourth) chunk\r\n") 52 : 2 : test.done() 53 : 2 : } 54 : 2 : }) 55 : 2 : } 56 : 2 : client.open("GET", "resources/chunked.py") 57 : 2 : client.send(null) 58 : 2 : }) 59 : 2 : </script> 60 : 2 : </body> 61 : 2 : </html> 62 : 2 : 63 : 2 : * 64 : 2 : * getresponseheader-chunked-trailer.htm 65 : 2 : */