node/test/parallel/test-dgram-sendto.js
Ruben Bridgewater c6b6c92185
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>
2018-03-25 01:45:37 +01:00

38 lines
1.2 KiB
JavaScript

'use strict';
require('../common');
const assert = require('assert');
const dgram = require('dgram');
const socket = dgram.createSocket('udp4');
const errObj = {
code: 'ERR_INVALID_ARG_TYPE',
name: 'TypeError [ERR_INVALID_ARG_TYPE]',
message: 'The "offset" argument must be of type number. Received type ' +
'undefined'
};
assert.throws(() => socket.sendto(), errObj);
errObj.message = 'The "length" argument must be of type number. Received ' +
'type string';
assert.throws(
() => socket.sendto('buffer', 1, 'offset', 'port', 'address', 'cb'),
errObj);
errObj.message = 'The "offset" argument must be of type number. Received ' +
'type string';
assert.throws(
() => socket.sendto('buffer', 'offset', 1, 'port', 'address', 'cb'),
errObj);
errObj.message = 'The "address" argument must be of type string. Received ' +
'type boolean';
assert.throws(
() => socket.sendto('buffer', 1, 1, 10, false, 'cb'),
errObj);
errObj.message = 'The "port" argument must be of type number. Received ' +
'type boolean';
assert.throws(
() => socket.sendto('buffer', 1, 1, false, 'address', 'cb'),
errObj);