1// Flags: --expose-internals 2'use strict'; 3 4require('../common'); 5const assert = require('assert'); 6const { validatePort } = require('internal/validators'); 7 8for (let n = 0; n <= 0xFFFF; n++) { 9 validatePort(n); 10 validatePort(`${n}`); 11 validatePort(`0x${n.toString(16)}`); 12 validatePort(`0o${n.toString(8)}`); 13 validatePort(`0b${n.toString(2)}`); 14} 15 16[ 17 -1, 'a', {}, [], false, true, 18 0xFFFF + 1, Infinity, -Infinity, NaN, 19 undefined, null, '', ' ', 1.1, '0x', 20 '-0x1', '-0o1', '-0b1', '0o', '0b', 21].forEach((i) => assert.throws(() => validatePort(i), { 22 code: 'ERR_SOCKET_BAD_PORT' 23})); 24