summaryrefslogtreecommitdiffstats
path: root/dom/xhr/tests/test_worker_xhr_system.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/xhr/tests/test_worker_xhr_system.js')
-rw-r--r--dom/xhr/tests/test_worker_xhr_system.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/dom/xhr/tests/test_worker_xhr_system.js b/dom/xhr/tests/test_worker_xhr_system.js
new file mode 100644
index 000000000..5ad63225c
--- /dev/null
+++ b/dom/xhr/tests/test_worker_xhr_system.js
@@ -0,0 +1,30 @@
+function ok(what, msg) {
+ postMessage({ event: msg, test: 'ok', a: what });
+}
+
+function is(a, b, msg) {
+ postMessage({ event: msg, test: 'is', a: a, b: b });
+}
+
+self.onmessage = function onmessage(event) {
+
+ // An XHR with system privileges will be able to do cross-site calls.
+
+ const TEST_URL = "http://example.com/tests/dom/xhr/tests/test_XHR_system.html";
+ is(location.hostname, "mochi.test", "hostname should be mochi.test");
+
+ var xhr = new XMLHttpRequest({mozSystem: true});
+ is(xhr.mozSystem, true, ".mozSystem == true");
+ xhr.open("GET", TEST_URL);
+ xhr.onload = function onload() {
+ is(xhr.status, 200);
+ ok(xhr.responseText != null);
+ ok(xhr.responseText.length);
+ postMessage({test: "finish"});
+ };
+ xhr.onerror = function onerror() {
+ ok(false, "Got an error event!");
+ postMessage({test: "finish"});
+ }
+ xhr.send();
+};