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 : var xhr = new XMLHttpRequest(); 7 : 1 : 8 : 1 : xhr.open('GET', `${activeURL.replace('/resources', '') + '/folder.txt'}#foobar`, false); 9 : 1 : xhr.send(); 10 : 1 : assert.strictEqual(xhr.responseText, 'top\n'); 11 : 1 : 12 : 1 : var xhr = new XMLHttpRequest(); 13 : 1 : 14 : 1 : xhr.open('GET', `${activeURL}/requri.py#foobar`, false); 15 : 1 : xhr.send(); 16 : 1 : assert(/xhr\/resources\/requri\.py$/.test(xhr.responseText)); 17 : 1 : 18 : 1 : var xhr = new XMLHttpRequest(); 19 : 1 : 20 : 1 : xhr.open('GET', `${activeURL}/requri.py?help=#foobar`, false); 21 : 1 : xhr.send(); 22 : 1 : assert(/xhr\/resources\/requri\.py\?help=$/.test(xhr.responseText)); 23 : 1 : 24 : 1 : var xhr = new XMLHttpRequest(); 25 : 1 : 26 : 1 : xhr.open('GET', `${activeURL}/requri.py?${encodeURIComponent("#foobar")}`, false); 27 : 1 : xhr.send(); 28 : 1 : assert(/xhr\/resources\/requri\.py\?%23foobar$/.test(xhr.responseText)); 29 : 1 : } 30 : 2 : 31 : 2 : /* 32 : 2 : * open-url-fragment.htm 33 : 2 : * 34 : 2 : 35 : 2 : <!DOCTYPE html> 36 : 2 : <html> 37 : 2 : <head> 38 : 2 : <title>XMLHttpRequest: open() resolving URLs - fragment identifier</title> 39 : 2 : <script src="/resources/testharness.js"></script> 40 : 2 : <script src="/resources/testharnessreport.js"></script> 41 : 2 : <link rel="help" href="https://xhr.spec.whatwg.org/#the-open()-method" data-tested-assertations="following::ol[1]/li[7]" /> 42 : 2 : </head> 43 : 2 : <body> 44 : 2 : <div id="log"></div> 45 : 2 : <script> 46 : 2 : test(function() { 47 : 2 : var client = new XMLHttpRequest() 48 : 2 : client.open("GET", "folder.txt#foobar", false) 49 : 2 : client.send(null) 50 : 2 : assert_equals(client.responseText, "top\n") 51 : 2 : }) 52 : 2 : test(function() { 53 : 2 : var client = new XMLHttpRequest() 54 : 2 : client.open("GET", "resources/requri.py#foobar", false) 55 : 2 : client.send(null) 56 : 2 : assert_regexp_match(client.responseText, /xhr\/resources\/requri\.py$/) 57 : 2 : }, 'make sure fragment is removed from URL before request') 58 : 2 : test(function() { 59 : 2 : var client = new XMLHttpRequest() 60 : 2 : client.open("GET", "resources/requri.py?help=#foobar", false) 61 : 2 : client.send(null) 62 : 2 : assert_regexp_match(client.responseText, /xhr\/resources\/requri\.py\?help=$/) 63 : 2 : }, 'make sure fragment is removed from URL before request (with query string)') 64 : 2 : test(function() { 65 : 2 : var client = new XMLHttpRequest() 66 : 2 : client.open("GET", "resources/requri.py?" +encodeURIComponent("#foobar"), false) 67 : 2 : client.send(null) 68 : 2 : assert_regexp_match(client.responseText, /xhr\/resources\/requri\.py\?%23foobar$/) 69 : 2 : }, 'make sure escaped # is not removed') 70 : 2 : </script> 71 : 2 : </body> 72 : 2 : </html> 73 : 2 : 74 : 2 : * 75 : 2 : * open-url-fragment.htm 76 : 2 : */