summaryrefslogtreecommitdiff
path: root/test/parallel/test-dgram-send-address-types.js
diff options
context:
space:
mode:
authorRuben Bridgewater <ruben@bridgewater.de>2018-03-19 13:33:46 +0100
committerRuben Bridgewater <ruben@bridgewater.de>2018-03-25 01:45:37 +0100
commitc6b6c92185316e13738e6fa931fdd5303e381e46 (patch)
treec38af9cd1a0a8cd6eeb459af3adee4dfd390fdc6 /test/parallel/test-dgram-send-address-types.js
parenteeb57022e6bada13955a19b15232a9ee4fe9b465 (diff)
downloadandroid-node-v8-c6b6c92185316e13738e6fa931fdd5303e381e46.tar.gz
android-node-v8-c6b6c92185316e13738e6fa931fdd5303e381e46.tar.bz2
android-node-v8-c6b6c92185316e13738e6fa931fdd5303e381e46.zip
lib: always show ERR_INVALID_ARG_TYPE received part
This makes a effort to make sure all of these errors will actually also show the received input. On top of that it refactors a few tests for better maintainability. It will also change the returned type to always be a simple typeof instead of special handling null. PR-URL: https://github.com/nodejs/node/pull/19445 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
Diffstat (limited to 'test/parallel/test-dgram-send-address-types.js')
-rw-r--r--test/parallel/test-dgram-send-address-types.js50
1 files changed, 15 insertions, 35 deletions
diff --git a/test/parallel/test-dgram-send-address-types.js b/test/parallel/test-dgram-send-address-types.js
index b3f4f3fcea..0d208cfdc8 100644
--- a/test/parallel/test-dgram-send-address-types.js
+++ b/test/parallel/test-dgram-send-address-types.js
@@ -10,47 +10,27 @@ const onMessage = common.mustCall((err, bytes) => {
assert.strictEqual(bytes, buf.length);
}, 6);
-const expectedError = { code: 'ERR_INVALID_ARG_TYPE',
- type: TypeError,
- message:
- /^The "address" argument must be one of type string or falsy$/
-};
-
const client = dgram.createSocket('udp4').bind(0, () => {
const port = client.address().port;
- // valid address: false
- client.send(buf, port, false, onMessage);
-
- // valid address: empty string
- client.send(buf, port, '', onMessage);
-
- // valid address: null
- client.send(buf, port, null, onMessage);
-
- // valid address: 0
- client.send(buf, port, 0, onMessage);
+ // Check valid addresses
+ [false, '', null, 0, undefined].forEach((address) => {
+ client.send(buf, port, address, onMessage);
+ });
- // valid address: undefined
- client.send(buf, port, undefined, onMessage);
-
- // valid address: not provided
+ // Valid address: not provided
client.send(buf, port, onMessage);
- // invalid address: object
- common.expectsError(() => {
- client.send(buf, port, []);
- }, expectedError);
-
- // invalid address: nonzero number
- common.expectsError(() => {
- client.send(buf, port, 1);
- }, expectedError);
-
- // invalid address: true
- common.expectsError(() => {
- client.send(buf, port, true);
- }, expectedError);
+ // Check invalid addresses
+ [[], 1, true].forEach((invalidInput) => {
+ const expectedError = {
+ code: 'ERR_INVALID_ARG_TYPE',
+ name: 'TypeError [ERR_INVALID_ARG_TYPE]',
+ message: 'The "address" argument must be one of type string or falsy. ' +
+ `Received type ${typeof invalidInput}`
+ };
+ assert.throws(() => client.send(buf, port, invalidInput), expectedError);
+ });
});
client.unref();