Auto merge of #9518 - shinglyu:responseurl, r=jdm

Implemented XMLHttpRequest.responseURL

Resolves #8830

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9518)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2016-03-23 00:12:57 +05:30
commit 50193e9119
4 changed files with 49 additions and 9 deletions

View file

@ -34794,6 +34794,12 @@
"deleted": [],
"items": {
"testharness": {
"XMLHttpRequest/responseurl.html": [
{
"path": "XMLHttpRequest/responseurl.html",
"url": "/XMLHttpRequest/responseurl.html"
}
],
"html/semantics/forms/textfieldselection/selection-after-content-change.html": [
{
"path": "html/semantics/forms/textfieldselection/selection-after-content-change.html",

View file

@ -3,12 +3,6 @@
[domain]
expected: FAIL
[URL]
expected: FAIL
[documentURI]
expected: FAIL
[referrer]
expected: FAIL

View file

@ -0,0 +1,37 @@
<!doctype html>
<html>
<head>
<title>XMLHttpRequest: responseURL test</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://xhr.spec.whatwg.org/#the-responseurl-attribute"/>
</head>
<body>
<div id="log"></div>
<script>
test(function() {
var client = new XMLHttpRequest()
assert_equals(client.responseURL, "")
client.open("GET", "foo.html", false)
client.send()
expected = location.href.replace(/[^/]*$/, 'foo.html')
assert_equals(client.status, 404)
assert_equals(client.responseURL, expected)
}, "404 response has proper responseURL")
test(function() {
var client = new XMLHttpRequest()
assert_equals(client.responseURL, "")
target = "image.gif"
client.open("GET", "resources/redirect.py?location=" + target, false)
client.send()
expected = location.href.replace(/[^/]*$/, "resources/" + target)
assert_equals(client.status, 200)
assert_equals(client.responseURL, expected)
}, "Redirected response has proper responseURL")
</script>
</body>
</html>