summaryrefslogtreecommitdiffstats
path: root/dom/xhr/tests/browser_xhr_substituted_protocol_responseURL.js
blob: b5556d549f504193fc627c8a46e7e07da0b488b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */

// Bug 1411725 - An XHR using a SubstitutingProtocolHandler channel
// (web-extension:, resource:, etc) should return the original URL,
// not the jar/file it was actually substituted for.

const TEST_URL = "resource://gre/modules/XPCOMUtils.sys.mjs";

add_task(async function test() {
  await new Promise(resolve => {
    const xhr = new XMLHttpRequest();
    xhr.responseType = "text";
    xhr.open("get", TEST_URL);
    xhr.addEventListener("loadend", () => {
      is(
        xhr.responseURL,
        TEST_URL,
        "original URL is given instead of substitution"
      );
      resolve();
    });
    xhr.send();
  });
});