mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-11-09 12:51:09 +02:00
Automatic update from web-platform-testsFix Create-on-worker-shutdown.any.js timing out when asserts fail The worker's onmessage handled needs to be wrapped in a step_func() Change-Id: Icfbad1936d9c9bd7fbd5522ce64f667f2699ef0d Reviewed-on: https://chromium-review.googlesource.com/1139179 Commit-Queue: Nate Chapin <japhet@chromium.org> Reviewed-by: Matt Falkenhagen <falken@chromium.org> Cr-Commit-Position: refs/heads/master@{#575694} -- wpt-commits: 5dc189dec91751495228e041055da8bc5bad943e wpt-pr: 12015
29 lines
883 B
JavaScript
29 lines
883 B
JavaScript
// META: script=websocket.sub.js
|
|
|
|
async_test(t => {
|
|
function workerCode() {
|
|
close();
|
|
var ws = new WebSocket(self.location.origin.replace('http', 'ws'));
|
|
|
|
var data = {
|
|
originalState: ws.readyState,
|
|
afterCloseState: null
|
|
};
|
|
|
|
ws.close();
|
|
|
|
data.afterCloseState = ws.readyState;
|
|
postMessage(data);
|
|
}
|
|
|
|
var workerBlob = new Blob([workerCode.toString() + ";workerCode();"], {
|
|
type: "application/javascript"
|
|
});
|
|
|
|
var w = new Worker(URL.createObjectURL(workerBlob));
|
|
w.onmessage = t.step_func(function(e) {
|
|
assert_equals(e.data.originalState, WebSocket.CONNECTING, "WebSocket created on worker shutdown is in connecting state.");
|
|
assert_equals(e.data.afterCloseState, WebSocket.CLOSING, "Closed WebSocket created on worker shutdown is in closing state.");
|
|
t.done();
|
|
});
|
|
}, 'WebSocket created after a worker self.close()');
|