@@ -27,35 +27,37 @@ const net = require('net');
2727
2828// Test wrong type of ports
2929{
30- function portTypeError ( opt ) {
31- const prefix = '"port" option should be a number or string: ' ;
32- const cleaned = opt . replace ( / [ \\ ^ $ . * + ? ( ) [ \] { } | = ! < > : - ] / g, '\\$&' ) ;
33- return new RegExp ( `^TypeError: ${ prefix } ${ cleaned } $` ) ;
30+ function portTypeError ( ) {
31+ return common . expectsError ( {
32+ code : 'ERR_INVALID_ARG_TYPE' ,
33+ type : TypeError
34+ } ) ;
3435 }
3536
36- syncFailToConnect ( true , portTypeError ( 'true' ) ) ;
37- syncFailToConnect ( false , portTypeError ( 'false' ) ) ;
38- syncFailToConnect ( [ ] , portTypeError ( '' ) , true ) ;
39- syncFailToConnect ( { } , portTypeError ( '[object Object]' ) , true ) ;
40- syncFailToConnect ( null , portTypeError ( 'null' ) ) ;
37+ syncFailToConnect ( true , portTypeError ) ;
38+ syncFailToConnect ( false , portTypeError ) ;
39+ syncFailToConnect ( [ ] , portTypeError , true ) ;
40+ syncFailToConnect ( { } , portTypeError , true ) ;
41+ syncFailToConnect ( null , portTypeError ) ;
4142}
4243
4344// Test out of range ports
4445{
45- function portRangeError ( opt ) {
46- const prefix = '"port" option should be >= 0 and < 65536: ' ;
47- const cleaned = opt . replace ( / [ \\ ^ $ . * + ? ( ) [ \] { } | = ! < > : - ] / g, '\\$&' ) ;
48- return new RegExp ( `^RangeError: ${ prefix } ${ cleaned } $` ) ;
46+ function portRangeError ( ) {
47+ return common . expectsError ( {
48+ code : 'ERR_SOCKET_BAD_PORT' ,
49+ type : RangeError
50+ } ) ;
4951 }
5052
51- syncFailToConnect ( '' , portRangeError ( '' ) ) ;
52- syncFailToConnect ( ' ' , portRangeError ( ' ' ) ) ;
53- syncFailToConnect ( '0x' , portRangeError ( '0x' ) , true ) ;
54- syncFailToConnect ( '-0x1' , portRangeError ( '-0x1' ) , true ) ;
55- syncFailToConnect ( NaN , portRangeError ( 'NaN' ) ) ;
56- syncFailToConnect ( Infinity , portRangeError ( 'Infinity' ) ) ;
57- syncFailToConnect ( - 1 , portRangeError ( '-1' ) ) ;
58- syncFailToConnect ( 65536 , portRangeError ( '65536' ) ) ;
53+ syncFailToConnect ( '' , portRangeError ) ;
54+ syncFailToConnect ( ' ' , portRangeError ) ;
55+ syncFailToConnect ( '0x' , portRangeError , true ) ;
56+ syncFailToConnect ( '-0x1' , portRangeError , true ) ;
57+ syncFailToConnect ( NaN , portRangeError ) ;
58+ syncFailToConnect ( Infinity , portRangeError ) ;
59+ syncFailToConnect ( - 1 , portRangeError ) ;
60+ syncFailToConnect ( 65536 , portRangeError ) ;
5961}
6062
6163// Test invalid hints
@@ -129,33 +131,40 @@ function doConnect(args, getCb) {
129131 ] ;
130132}
131133
132- function syncFailToConnect ( port , regexp , optOnly ) {
134+ function syncFailToConnect ( port , assertErr , optOnly ) {
133135 if ( ! optOnly ) {
134136 // connect(port, cb) and connect(port)
135137 const portArgBlocks = doConnect ( [ port ] , ( ) => common . mustNotCall ( ) ) ;
136138 for ( const block of portArgBlocks ) {
137- assert . throws ( block , regexp , `${ block . name } (${ port } )` ) ;
139+ assert . throws ( block ,
140+ assertErr ( ) ,
141+ `${ block . name } (${ port } )` ) ;
138142 }
139143
140144 // connect(port, host, cb) and connect(port, host)
141145 const portHostArgBlocks = doConnect ( [ port , 'localhost' ] ,
142146 ( ) => common . mustNotCall ( ) ) ;
143147 for ( const block of portHostArgBlocks ) {
144- assert . throws ( block , regexp , `${ block . name } (${ port } , 'localhost')` ) ;
148+ assert . throws ( block ,
149+ assertErr ( ) ,
150+ `${ block . name } (${ port } , 'localhost')` ) ;
145151 }
146152 }
147153 // connect({port}, cb) and connect({port})
148154 const portOptBlocks = doConnect ( [ { port } ] ,
149155 ( ) => common . mustNotCall ( ) ) ;
150156 for ( const block of portOptBlocks ) {
151- assert . throws ( block , regexp , `${ block . name } ({port: ${ port } })` ) ;
157+ assert . throws ( block ,
158+ assertErr ( ) ,
159+ `${ block . name } ({port: ${ port } })` ) ;
152160 }
153161
154162 // connect({port, host}, cb) and connect({port, host})
155163 const portHostOptBlocks = doConnect ( [ { port : port , host : 'localhost' } ] ,
156164 ( ) => common . mustNotCall ( ) ) ;
157165 for ( const block of portHostOptBlocks ) {
158- assert . throws ( block , regexp ,
166+ assert . throws ( block ,
167+ assertErr ( ) ,
159168 `${ block . name } ({port: ${ port } , host: 'localhost'})` ) ;
160169 }
161170}
0 commit comments