diff options
Diffstat (limited to 'testing/web-platform/tests/XMLHttpRequest/open-url-worker-origin.htm')
-rw-r--r-- | testing/web-platform/tests/XMLHttpRequest/open-url-worker-origin.htm | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/testing/web-platform/tests/XMLHttpRequest/open-url-worker-origin.htm b/testing/web-platform/tests/XMLHttpRequest/open-url-worker-origin.htm new file mode 100644 index 000000000..acdbddbf2 --- /dev/null +++ b/testing/web-platform/tests/XMLHttpRequest/open-url-worker-origin.htm @@ -0,0 +1,43 @@ + <!DOCTYPE html> +<html> +<head> + <meta charset="utf-8" /> + <title>XMLHttpRequest: worker scripts, origin and referrer</title> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <link rel="help" href="https://xhr.spec.whatwg.org/#the-open()-method" data-tested-assertations="following::OL[1]/LI[3] following::OL[1]/LI[3]/ol[1]/li[1] following::OL[1]/LI[3]/ol[1]/li[2] following::OL[1]/LI[3]/ol[1]/li[3]" /> +</head> +<body> + <div id="log"></div> + <script type="text/javascript"> + var test = async_test() // This "test" does not actually do any assertations. It's just there to have multiple, separate, asyncronous sub-tests. + var expectations = { + 'Referer header': 'referer: '+(location.href.replace(/[^/]*$/, ''))+"resources/workerxhr-origin-referrer.js\n", + 'Origin header': 'origin: '+location.protocol+'//'+location.hostname+((location.port === "")?"":":"+location.port)+'\n', + 'Request URL test' : (location.href.replace(/[^/]*$/, ''))+'resources/requri.py?full' + } + // now start the worker + var worker = new Worker("resources/workerxhr-origin-referrer.js", true) + worker.onmessage = function (e) { + var subtest = async_test(e.data.test) + subtest.step(function(){ + var thisExpectation = expectations[e.data.test] + delete expectations[e.data.test] + assert_equals(e.data.result, thisExpectation) + subtest.done() + }) + var allDone = true + for(var prop in expectations){ + allDone = false + } + if(allDone){ + test.step(function(){ + test.done() + }) + } + } + + </script> +</body> +</html> + |