mirror of
https://github.com/servo/servo
synced 2026-05-14 10:56:44 +02:00
- Update CSS tests to revision e05bfd5e30ed662c2f8a353577003f8eed230180. - Update web-platform-tests to revision a052787dd5c069a340031011196b73affbd68cd9.
32 lines
1.2 KiB
HTML
32 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<meta charset="utf-8">
|
|
<title>FileAPI Test: Verify origin of Blob URL</title>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<body>
|
|
<script>
|
|
test(t => {
|
|
const blob = new Blob(["Test Blob"]);
|
|
const url = URL.createObjectURL(blob);
|
|
assert_equals(new URL(url).origin, location.origin);
|
|
assert_true(url.includes(location.origin));
|
|
assert_true(url.startsWith('blob:{{location[scheme]}}://'));
|
|
}, 'Verify origin of Blob URI matches our origin');
|
|
|
|
async_test(t => {
|
|
const frame = document.createElement('iframe');
|
|
self.addEventListener('message', t.step_func(e => {
|
|
if (e.source != frame.contentWindow) return;
|
|
const url = e.data.url;
|
|
assert_false(url.includes('天気の良い日'),
|
|
'Origin should be ascii rather than unicode');
|
|
assert_equals(new URL(url).origin, e.origin,
|
|
'Origin of URL should match origin of frame');
|
|
assert_true(url.startsWith('blob:{{location[scheme]}}://xn--'));
|
|
t.done();
|
|
}));
|
|
frame.src = '{{location[scheme]}}://{{domains[天気の良い日]}}:{{location[port]}}/FileAPI/support/url-origin.html';
|
|
document.body.appendChild(frame);
|
|
}, 'Verify serialization of non-ascii origin in Blob URLs');
|
|
</script>
|