mirror of
https://github.com/servo/servo.git
synced 2025-08-15 02:15:33 +01:00
Update web-platform-tests to revision 3137d1d2d7757366a69f8a449b458b5057e0e81e
This commit is contained in:
parent
81ca858678
commit
d6ba94ca28
2339 changed files with 89274 additions and 9328 deletions
|
@ -0,0 +1,74 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset=utf-8>
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/comms.html#dom-messageport-close">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script>
|
||||
// How long (in ms) these tests should wait before deciding no further messages
|
||||
// will be received.
|
||||
const time_to_wait_for_messages = 100;
|
||||
|
||||
async_test(t => {
|
||||
const c = new MessageChannel();
|
||||
c.port1.onmessage = t.unreached_func('Should not have delivered message');
|
||||
c.port1.close();
|
||||
c.port2.postMessage('TEST');
|
||||
setTimeout(t.step_func_done(), time_to_wait_for_messages);
|
||||
}, 'Message sent to closed port should not arrive.');
|
||||
|
||||
async_test(t => {
|
||||
const c = new MessageChannel();
|
||||
c.port1.onmessage = t.unreached_func('Should not have delivered message');
|
||||
c.port2.close();
|
||||
c.port2.postMessage('TEST');
|
||||
setTimeout(t.step_func_done(), time_to_wait_for_messages);
|
||||
}, 'Message sent from closed port should not arrive.');
|
||||
|
||||
async_test(t => {
|
||||
const c = new MessageChannel();
|
||||
c.port1.onmessage = t.unreached_func('Should not have delivered message');
|
||||
c.port1.close();
|
||||
const c2 = new MessageChannel();
|
||||
c2.port1.onmessage = t.step_func(e => {
|
||||
e.ports[0].postMessage('TESTMSG');
|
||||
setTimeout(t.step_func_done(), time_to_wait_for_messages);
|
||||
});
|
||||
c2.port2.postMessage('TEST', [c.port2]);
|
||||
}, 'Message sent to closed port from transferred port should not arrive.');
|
||||
|
||||
async_test(t => {
|
||||
const c = new MessageChannel();
|
||||
c.port1.onmessage = t.unreached_func('Should not have delivered message');
|
||||
c.port2.close();
|
||||
const c2 = new MessageChannel();
|
||||
c2.port1.onmessage = t.step_func(e => {
|
||||
e.ports[0].postMessage('TESTMSG');
|
||||
setTimeout(t.step_func_done(), time_to_wait_for_messages);
|
||||
});
|
||||
c2.port2.postMessage('TEST', [c.port2]);
|
||||
}, 'Message sent from transferred closed port should not arrive.');
|
||||
|
||||
async_test(t => {
|
||||
const c = new MessageChannel();
|
||||
let isClosed = false;
|
||||
c.port1.onmessage = t.step_func_done(e => {
|
||||
assert_true(isClosed);
|
||||
assert_equals(e.data, 'TEST');
|
||||
});
|
||||
c.port2.postMessage('TEST');
|
||||
c.port2.close();
|
||||
isClosed = true;
|
||||
}, 'Inflight messages should be delivered even when sending port is closed afterwards.');
|
||||
|
||||
async_test(t => {
|
||||
const c = new MessageChannel();
|
||||
c.port1.onmessage = t.step_func_done(e => {
|
||||
if (e.data == 'DONE') t.done();
|
||||
assert_equals(e.data, 'TEST');
|
||||
c.port1.close();
|
||||
});
|
||||
c.port2.postMessage('TEST');
|
||||
c.port2.postMessage('DONE');
|
||||
}, 'Close in onmessage should not cancel inflight messages.');
|
||||
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue