deno.land / std@0.166.0 / node / _tools / test / parallel / test-dgram-createSocket-type.js
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869// deno-fmt-ignore-file// deno-lint-ignore-file
// Copyright Joyent and Node contributors. All rights reserved. MIT license.// Taken from Node 18.12.0// This file is automatically generated by "node/_tools/setup.ts". Do not modify this file manually
'use strict';const common = require('../common');const assert = require('assert');const dgram = require('dgram');const invalidTypes = [ 'test', ['udp4'], new String('udp4'), 1, {}, true, false, null, undefined,];const validTypes = [ 'udp4', 'udp6', { type: 'udp4' }, { type: 'udp6' },];const errMessage = /^Bad socket type specified\. Valid types are: udp4, udp6$/;
// Error must be thrown with invalid typesinvalidTypes.forEach((invalidType) => { assert.throws(() => { dgram.createSocket(invalidType); }, { code: 'ERR_SOCKET_BAD_TYPE', name: 'TypeError', message: errMessage });});
// Error must not be thrown with valid typesvalidTypes.forEach((validType) => { const socket = dgram.createSocket(validType); socket.close();});
// Ensure buffer sizes can be set{ const socket = dgram.createSocket({ type: 'udp4', recvBufferSize: 10000, sendBufferSize: 15000 });
socket.bind(common.mustCall(() => { // note: linux will double the buffer size assert.ok(socket.getRecvBufferSize() === 10000 || socket.getRecvBufferSize() === 20000, 'SO_RCVBUF not 10000 or 20000, ' + `was ${socket.getRecvBufferSize()}`); assert.ok(socket.getSendBufferSize() === 15000 || socket.getSendBufferSize() === 30000, 'SO_SNDBUF not 15000 or 30000, ' + `was ${socket.getRecvBufferSize()}`); socket.close(); }));}
Version Info