blob: ac775be5a3d66b24e7b663f5d246a93a20357da0 (
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
28
29
30
31
|
const gHttpTestRoot = "http://example.com/browser/dom/base/test/";
add_task(async function() {
var statusTexts = [];
var xhr = new XMLHttpRequest();
var observer = {
observe(aSubject, aTopic, aData) {
try {
var channel = aSubject.QueryInterface(Ci.nsIHttpChannel);
channel.getResponseHeader("Location");
} catch (e) {
return;
}
statusTexts.push(xhr.statusText);
},
};
Services.obs.addObserver(observer, "http-on-examine-response");
await new Promise(resolve => {
xhr.addEventListener("load", function() {
statusTexts.push(this.statusText);
is(statusTexts[0], "", "Empty statusText value for HTTP 302");
is(statusTexts[1], "OK", "OK statusText value for the redirect.");
resolve();
});
xhr.open("GET", gHttpTestRoot + "file_bug1011748_redirect.sjs", true);
xhr.send();
});
Services.obs.removeObserver(observer, "http-on-examine-response");
});
|