Source code

Revision control

Copy as Markdown

Other Tools

importScripts("/resources/testharness.js")
async_test(function() {
var expected = 'Referer: ' +
location.href.replace(/[^/]*$/, '') +
"workerxhr-origin-referrer.js\n"
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = this.step_func(function() {
if (xhr.readyState == 4) {
assert_equals(xhr.responseText, expected)
this.done()
}
})
xhr.open('GET', 'inspect-headers.py?filter_name=referer', true)
xhr.send()
}, 'Referer header')
async_test(function() {
var expected = 'Origin: ' +
location.protocol +
'//' +
location.hostname +
(location.port === "" ? "" : ":" + location.port) +
'\n'
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = this.step_func(function() {
if (xhr.readyState == 4) {
assert_equals(xhr.responseText, expected)
this.done()
}
})
var url = location.protocol +
'//www2.' +
location.hostname +
(location.port === "" ? "" : ":" + location.port) +
location.pathname.replace(/[^/]*$/, '') +
'inspect-headers.py?filter_name=origin&cors'
xhr.open('GET', url, true)
xhr.send()
}, 'Origin header')
async_test(function() {
// If "origin" / base URL is the origin of this JS file, we can load files
// from the server it originates from.. and requri.py will be able to tell us
// what the requested URL was
var expected = location.href.replace(/[^/]*$/, '') +
'requri.py?full'
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = this.step_func(function() {
if (xhr.readyState == 4) {
assert_equals(xhr.responseText, expected)
this.done()
}
})
xhr.open('GET', 'requri.py?full', true)
xhr.send()
}, 'Request URL test')
done()