diff options
author | Santiago Gimeno <santiago.gimeno@gmail.com> | 2019-03-16 23:03:48 +0100 |
---|---|---|
committer | Daniel Bevenius <daniel.bevenius@gmail.com> | 2019-04-03 06:48:13 +0200 |
commit | 9e960175d101fd2b41765353feab2f67c750aa5c (patch) | |
tree | 2e7d32c5f10a24428b970d61d9a66905bdf0852f /test/parallel/test-dgram-connect-send-multi-string-array.js | |
parent | 38f0e382f7b431620323a3bb9cac052d3e7a539d (diff) | |
download | android-node-v8-9e960175d101fd2b41765353feab2f67c750aa5c.tar.gz android-node-v8-9e960175d101fd2b41765353feab2f67c750aa5c.tar.bz2 android-node-v8-9e960175d101fd2b41765353feab2f67c750aa5c.zip |
dgram: add support for UDP connected sockets
Added the `dgram.connect()` and `dgram.disconnect()` methods that
associate/disassociate a udp socket to/from a remote address.
It optimizes for cases where lots of packets are sent to the same
address.
Also added the `dgram.remoteAddress()` method to retrieve the associated
remote address.
PR-URL: https://github.com/nodejs/node/pull/26871
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'test/parallel/test-dgram-connect-send-multi-string-array.js')
-rw-r--r-- | test/parallel/test-dgram-connect-send-multi-string-array.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/test/parallel/test-dgram-connect-send-multi-string-array.js b/test/parallel/test-dgram-connect-send-multi-string-array.js new file mode 100644 index 0000000000..e69aa82d47 --- /dev/null +++ b/test/parallel/test-dgram-connect-send-multi-string-array.js @@ -0,0 +1,17 @@ +'use strict'; +const common = require('../common'); +const assert = require('assert'); +const dgram = require('dgram'); +const socket = dgram.createSocket('udp4'); +const data = ['foo', 'bar', 'baz']; + +socket.on('message', common.mustCall((msg, rinfo) => { + socket.close(); + assert.deepStrictEqual(msg.toString(), data.join('')); +})); + +socket.bind(0, () => { + socket.connect(socket.address().port, common.mustCall(() => { + socket.send(data); + })); +}); |