@@ -16,26 +16,38 @@ server.on('stream', (stream) => {
16
16
server . listen ( 0 , common . mustCall ( ( ) => {
17
17
const client = h2 . connect ( `http://localhost:${ server . address ( ) . port } ` ) ;
18
18
const req = client . request ( ) ;
19
- req . close ( 1 ) ;
19
+ const closeCode = 1 ;
20
+
21
+ common . expectsError (
22
+ ( ) => req . close ( 2 ** 32 ) ,
23
+ {
24
+ type : RangeError ,
25
+ code : 'ERR_OUT_OF_RANGE' ,
26
+ message : 'The "code" argument is out of range'
27
+ }
28
+ ) ;
29
+ assert . strictEqual ( req . closed , false ) ;
30
+
31
+ req . close ( closeCode , common . mustCall ( ) ) ;
20
32
assert . strictEqual ( req . closed , true ) ;
21
33
22
34
// Make sure that destroy is called.
23
35
req . _destroy = common . mustCall ( req . _destroy . bind ( req ) ) ;
24
36
25
37
// Second call doesn't do anything.
26
- req . close ( 8 ) ;
38
+ req . close ( closeCode + 1 ) ;
27
39
28
40
req . on ( 'close' , common . mustCall ( ( code ) => {
29
41
assert . strictEqual ( req . destroyed , true ) ;
30
- assert . strictEqual ( code , 1 ) ;
42
+ assert . strictEqual ( code , closeCode ) ;
31
43
server . close ( ) ;
32
44
client . close ( ) ;
33
45
} ) ) ;
34
46
35
47
req . on ( 'error' , common . expectsError ( {
36
48
code : 'ERR_HTTP2_STREAM_ERROR' ,
37
49
type : Error ,
38
- message : ' Stream closed with error code 1'
50
+ message : ` Stream closed with error code ${ closeCode } `
39
51
} ) ) ;
40
52
41
53
req . on ( 'response' , common . mustCall ( ) ) ;
0 commit comments