From 5e7c0a37ee0ada07de47f71ccd6509f71a487e7c Mon Sep 17 00:00:00 2001 From: uzlopak Date: Thu, 17 Nov 2022 16:06:09 +0100 Subject: [PATCH 1/3] fix node 19.1.0 port validation test --- test/server.test.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/test/server.test.js b/test/server.test.js index 5919491430..b4cc2c1436 100644 --- a/test/server.test.js +++ b/test/server.test.js @@ -3,6 +3,7 @@ const t = require('tap') const test = t.test const Fastify = require('..') +const semver = require('semver') test('listen should accept null port', t => { t.plan(1) @@ -36,19 +37,26 @@ test('listen should accept stringified number port', t => { test('listen should reject string port', async (t) => { t.plan(2) - const fastify = Fastify() t.teardown(fastify.close.bind(fastify)) try { await fastify.listen({ port: 'hello-world' }) } catch (error) { - t.same(error.message, 'options.port should be >= 0 and < 65536. Received hello-world.') + if (semver.lt(process.version, '19.1.0')) { + t.same(error.message, 'options.port should be >= 0 and < 65536. Received hello-world.') + } else { + t.same(error.message, 'options.port should be >= 0 and < 65536. Received type string (\'hello-world\').') + } } try { await fastify.listen({ port: '1234hello' }) } catch (error) { - t.same(error.message, 'options.port should be >= 0 and < 65536. Received 1234hello.') + if (semver.lt(process.version, '19.1.0')) { + t.same(error.message, 'options.port should be >= 0 and < 65536. Received 1234hello.') + } else { + t.same(error.message, "options.port should be >= 0 and < 65536. Received type string ('1234hello').") + } } }) From dde718a870c9532703426755f9070d9d7c835e59 Mon Sep 17 00:00:00 2001 From: Uzlopak Date: Thu, 17 Nov 2022 16:15:16 +0100 Subject: [PATCH 2/3] Apply suggestions from code review --- test/server.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/server.test.js b/test/server.test.js index b4cc2c1436..094c3253c9 100644 --- a/test/server.test.js +++ b/test/server.test.js @@ -46,7 +46,7 @@ test('listen should reject string port', async (t) => { if (semver.lt(process.version, '19.1.0')) { t.same(error.message, 'options.port should be >= 0 and < 65536. Received hello-world.') } else { - t.same(error.message, 'options.port should be >= 0 and < 65536. Received type string (\'hello-world\').') + t.same(error.message, "options.port should be >= 0 and < 65536. Received type string ('hello-world').") } } From fd64c795867f01f7ff72556ff2ffb9fcb45510b7 Mon Sep 17 00:00:00 2001 From: uzlopak Date: Fri, 18 Nov 2022 10:11:04 +0100 Subject: [PATCH 3/3] check for ERR_SOCKET_BAD_PORT --- test/server.test.js | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/test/server.test.js b/test/server.test.js index 094c3253c9..70dd5a915b 100644 --- a/test/server.test.js +++ b/test/server.test.js @@ -3,7 +3,6 @@ const t = require('tap') const test = t.test const Fastify = require('..') -const semver = require('semver') test('listen should accept null port', t => { t.plan(1) @@ -43,20 +42,12 @@ test('listen should reject string port', async (t) => { try { await fastify.listen({ port: 'hello-world' }) } catch (error) { - if (semver.lt(process.version, '19.1.0')) { - t.same(error.message, 'options.port should be >= 0 and < 65536. Received hello-world.') - } else { - t.same(error.message, "options.port should be >= 0 and < 65536. Received type string ('hello-world').") - } + t.equal(error.code, 'ERR_SOCKET_BAD_PORT') } try { await fastify.listen({ port: '1234hello' }) } catch (error) { - if (semver.lt(process.version, '19.1.0')) { - t.same(error.message, 'options.port should be >= 0 and < 65536. Received 1234hello.') - } else { - t.same(error.message, "options.port should be >= 0 and < 65536. Received type string ('1234hello').") - } + t.equal(error.code, 'ERR_SOCKET_BAD_PORT') } })