-
-
Notifications
You must be signed in to change notification settings - Fork 33.4k
Make test-worker-message-port-infinite-message-loop.js
fail when the port1.on('message'
callback isn't called
#59885
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Add assertion to verify that the MessagePort's message event is actually emitted in test-worker-message-port-infinite-message-loop.js. Previously, the test could pass even if the event was not fired.
port1.on('message'
callback isn't calledtest-worker-message-port-infinite-message-loop.js
fail when the port1.on('message'
callback isn't called
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #59885 +/- ##
==========================================
- Coverage 88.29% 88.27% -0.02%
==========================================
Files 702 702
Lines 206875 206875
Branches 39806 39802 -4
==========================================
- Hits 182667 182627 -40
- Misses 16218 16267 +49
+ Partials 7990 7981 -9 🚀 New features to boost your workflow:
|
common.mustCall(() => { | ||
assert(count > 0, 'count should be greater than 0'); | ||
}) | ||
); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the more correct way to do this would be to wrap the callback to the port1.on
in a common.mustCallAtLeast(...)
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just going to go ahead with this since it's strictly an improvement
Landed in 9790315 |
Add assertion to verify that the MessagePort's message event is actually emitted in test-worker-message-port-infinite-message-loop.js. Previously, the test could pass even if the event was not fired. PR-URL: #59885 Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
The test
test-worker-message-port-infinite-message-loop.js
currently passes if the MessagePort does not emit any messages.If the message port does not emit a
"message"
event then the infinite message loop would never occur, therefore it's probably not the intent of the test.Context: this test was incorrectly passing in Bun when we currently do not start the MessagePort until the
start
method is called. This test continues to pass in Node and now correctly fails in Bun (we will fix this later).