gecko/testing/web-platform/tests/XMLHttpRequest/responsexml-document-properties.htm

64 lines
2.2 KiB
HTML

<!doctype html>
<html>
<head>
<title>XMLHttpRequest: responseXML document properties</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://xhr.spec.whatwg.org/#the-responsexml-attribute" data-tested-assertations="following::ol[1]/li[4]" />
<link rel="help" href="https://xhr.spec.whatwg.org/#document-response-entity-body" data-tested-assertations="following::ol[1]/li[6] following::ol[1]/li[7] following::ol[1]/li[8] following::ol[1]/li[10]" />
</head>
<body>
<div id="log"></div>
<script>
var client = new XMLHttpRequest()
client.open("GET", "resources/well-formed.xml", false)
client.send(null)
var expected = {
domain:undefined,
URL:location.href.replace(/[^/]*$/, 'resources/well-formed.xml'),
documentURI:location.href.replace(/[^/]*$/, 'resources/well-formed.xml'),
referrer:'',
title:'',
contentType:'application/xml',
readyState:'complete',
location:null,
defaultView:null,
body:undefined,
images: undefined,
doctype:null,
forms:undefined,
all:undefined,
links: undefined,
cookie:''
}
for (var name in expected) {
runTest(name, expected[name])
}
function runTest(name, value){
test(function(){
assert_equals(client.responseXML[name], value)
}, name)
}
test(function() {
assert_true((new Date(client.getResponseHeader('Last-Modified'))).getTime() == (new Date(client.responseXML.lastModified)).getTime(), 'responseXML.lastModified time shoud be equal to time in response Last-Modified header')
}, 'lastModified set according to HTTP header')
test(function() {
client.responseXML.cookie = "thisshouldbeignored"
assert_equals(client.responseXML.cookie, "")
}, 'cookie (after setting it)')
test(function() {
assert_equals(typeof(client.responseXML.styleSheets), "object")
}, 'styleSheets')
test(function() {
assert_equals(typeof(client.responseXML.implementation), "object")
}, 'implementation')
</script>
</body>
</html>