test: add coverage to dgram receive error case

This commit adds coverage for the case where a dgram socket
handle receives a message, but nread < 0, indicating an error.

PR-URL: https://github.com/nodejs/node/pull/11241
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com>
This commit is contained in:
cjihrig 2017-02-08 10:41:26 -05:00
parent ca8c30a35c
commit 1683299c33

View File

@ -0,0 +1,16 @@
'use strict';
const common = require('../common');
const assert = require('assert');
const dgram = require('dgram');
const s = dgram.createSocket('udp4');
s.on('error', common.mustCall((err) => {
s.close();
// Don't check the full error message, as the errno is not important here.
assert(/^Error: recvmsg/.test(err));
assert.strictEqual(err.syscall, 'recvmsg');
}));
s.on('message', common.mustNotCall('no message should be received.'));
s.bind(common.mustCall(() => s._handle.onmessage(-1, s._handle, null, null)));