mirror of
https://github.com/servo/servo.git
synced 2025-08-13 09:25:32 +01:00
Update web-platform-tests to revision 58eb04cecbbec2e18531ab440225e38944a9c444
This commit is contained in:
parent
25e8bf69e6
commit
665817d2a6
35333 changed files with 1818077 additions and 16036 deletions
|
@ -0,0 +1,41 @@
|
|||
var RESOURCES_DIR = "/beacon/resources/";
|
||||
|
||||
var referrerOrigin = self.location.origin + '/';
|
||||
var referrerUrl = self.location.href;
|
||||
|
||||
function testReferrerHeader(testBase, expectedReferrer) {
|
||||
var id = self.token();
|
||||
var testUrl = testBase + "inspect-header.py?header=referer&cmd=put&id=" + id;
|
||||
|
||||
promise_test(function(test) {
|
||||
assert_true(navigator.sendBeacon(testUrl), "SendBeacon Succeeded");
|
||||
return pollResult(expectedReferrer, id) .then(result => {
|
||||
assert_equals(result, expectedReferrer, "Correct referrer header result");
|
||||
});
|
||||
}, "Test referer header " + testBase);
|
||||
}
|
||||
|
||||
// SendBeacon is an asynchronous and non-blocking request to a web server.
|
||||
// We may have to create a poll loop to get result from server
|
||||
function pollResult(expectedReferrer, id) {
|
||||
var checkUrl = RESOURCES_DIR + "inspect-header.py?header=referer&cmd=get&id=" + id;
|
||||
|
||||
return new Promise(resolve => {
|
||||
function checkResult() {
|
||||
fetch(checkUrl).then(
|
||||
function(response) {
|
||||
assert_equals(response.status, 200, "Inspect header response's status is 200");
|
||||
let result = response.headers.get("x-request-referer");
|
||||
|
||||
if (result != undefined) {
|
||||
resolve(result);
|
||||
} else {
|
||||
step_timeout(checkResult.bind(this), 100);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
checkResult();
|
||||
});
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue