-
Notifications
You must be signed in to change notification settings - Fork 29.6k
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
test: add check in test-signal-handler #8248
Conversation
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change.
process.kill(process.pid, 'SIGUSR1'); | ||
} | ||
}, 1); | ||
|
||
// Test on condition where a watcher for SIGNAL | ||
// has been previously registered, and `process.listeners(SIGNAL).length === 1` | ||
process.on('SIGHUP', function() {}); | ||
process.on('SIGHUP', function() { common.fail('should not run'); }); |
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.
Wrap it with common.mustCall()
, tho?
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.
If the function is called, the test has failed. It would be wrapped in a 'common.mustNotCall()' if we had one.
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 would simply make this
process.on('SIGHUP', common.fail)
And just do without the should not run
text.
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.
@jasnell Done that way, the AssertionError looks like this:
AssertionError: null undefined null
at process.exports.fail (/Users/trott/io.js/test/common.js:438:10)
at emitNone (events.js:91:20)
at process.emit (events.js:185:7)
at Signal.wrap.onsignal (internal/process.js:199:44)
There are two things I don't like about that:
- The stack trace does not show where the actual problem is. It does not mention the test file at all.
null undefined null
: What?!
In contrast, done the way it is in this PR, it looks like this:
AssertionError: should not run
at Object.exports.fail (/Users/trott/io.js/test/common.js:438:10)
at process.<anonymous> (/Users/trott/io.js/test/parallel/test-signal-handler.js:32:42)
at emitNone (events.js:91:20)
at process.emit (events.js:185:7)
at Signal.wrap.onsignal (internal/process.js:199:44)
The stack trace includes the name of the test file and the line that resulted in the failure.
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.
null undefined null
is going to be my new catchphrase... sigh.. looks like we should tweak the output for common.fail
LGTM |
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change. PR-URL: nodejs#8248 Reviewed-By: Colin Ihrig <[email protected]>
Landed in a6d53c6 |
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change. PR-URL: nodejs#8248 Reviewed-By: Colin Ihrig <[email protected]>
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change. PR-URL: #8248 Reviewed-By: Colin Ihrig <[email protected]>
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change. PR-URL: #8248 Reviewed-By: Colin Ihrig <[email protected]>
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change. PR-URL: #8248 Reviewed-By: Colin Ihrig <[email protected]>
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change. PR-URL: #8248 Reviewed-By: Colin Ihrig <[email protected]>
* Check that the removed listener is not called. * Opportunistic `==` -> `===` change. PR-URL: #8248 Reviewed-By: Colin Ihrig <[email protected]>
Checklist
make -j4 test
(UNIX), orvcbuild test nosign
(Windows) passesAffected core subsystem(s)
test process
Description of change
==
->===
change.