mirror of
https://github.com/servo/servo.git
synced 2025-10-03 18:19:14 +01:00
51 lines
1.9 KiB
HTML
51 lines
1.9 KiB
HTML
<!DOCTYPE html>
|
|
<meta charset="utf-8"/>
|
|
<link rel="author" href="mtrzos@google.com" title="Maciek Trzos">
|
|
<script src=/resources/testharness.js></script>
|
|
<script src=/resources/testharnessreport.js></script>
|
|
<script src=/fetch/sec-metadata/resources/helper.js></script>
|
|
<body>
|
|
<script>
|
|
if ('serviceWorker' in navigator) {
|
|
window.addEventListener('load', function() {
|
|
navigator.serviceWorker.register('/fetch/sec-metadata/resources/record-header.py?file=serviceworker-same-origin').then(function(registration) {
|
|
test_same_origin();
|
|
|
|
// uninstall the serviceworker after the test
|
|
navigator.serviceWorker.getRegistrations().then(function(registrations) {
|
|
for(let registration of registrations) {
|
|
registration.unregister()
|
|
}
|
|
})
|
|
}, function(err) {
|
|
// registration failed
|
|
});
|
|
});
|
|
}
|
|
else {
|
|
test(function () {
|
|
done();
|
|
}, "Browser does not support serviceworker");
|
|
}
|
|
</script>
|
|
</body>
|
|
|
|
<script>
|
|
function test_same_origin(){
|
|
var same_origin_test = async_test("Same-Origin serviceworker");
|
|
same_origin_test.step(function () {
|
|
key = "serviceworker-same-origin";
|
|
expected_same_origin = {"destination":"serviceworker", "site":"same-origin"};
|
|
|
|
// Requests from the server the saved value of the Sec-Metadata header
|
|
same_origin_xhr = new XMLHttpRequest();
|
|
same_origin_xhr.open("GET", "/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key);
|
|
|
|
// Async test step triggered when the response is loaded
|
|
same_origin_xhr.onreadystatechange = same_origin_test.step_func(function () {
|
|
verify_response(same_origin_xhr, same_origin_test, expected_same_origin)
|
|
});
|
|
same_origin_xhr.send();
|
|
});
|
|
}
|
|
</script>
|