1
1
import type { AddressInfo } from 'node:net' ;
2
2
import http , { Server } from 'node:http' ;
3
3
import getStream from 'get-stream' ;
4
+ import { describe , beforeAll , afterAll , test } from 'vitest' ;
4
5
import { TransformHeadersAgent } from '../src/agent/transform-headers-agent.js' ;
5
6
import { startDummyServer } from './helpers/dummy-server.js' ;
6
7
@@ -23,14 +24,14 @@ describe('TransformHeadersAgent', () => {
23
24
server . close ( ) ;
24
25
} ) ;
25
26
26
- test ( 'Pascal-Case' , ( ) => {
27
+ test ( 'Pascal-Case' , ( t ) => {
27
28
const transformAgent = new TransformHeadersAgent ( agent ) ;
28
29
29
- expect ( transformAgent . toPascalCase ( 'connection' ) ) . toBe ( 'Connection' ) ;
30
- expect ( transformAgent . toPascalCase ( 'user-agent' ) ) . toBe ( 'User-Agent' ) ;
30
+ t . expect ( transformAgent . toPascalCase ( 'connection' ) ) . toBe ( 'Connection' ) ;
31
+ t . expect ( transformAgent . toPascalCase ( 'user-agent' ) ) . toBe ( 'User-Agent' ) ;
31
32
} ) ;
32
33
33
- test ( 'transformRequest' , ( done ) => {
34
+ test ( 'transformRequest' , ( t ) => new Promise < void > ( ( done ) => {
34
35
const requestHeaders = {
35
36
cookie : 'test=1' ,
36
37
'user-agent' : 'not a chrome' ,
@@ -42,12 +43,12 @@ describe('TransformHeadersAgent', () => {
42
43
const body = await getStream ( response ) ;
43
44
const headers = JSON . parse ( body ) ;
44
45
45
- expect ( headers . Cookie ) . toBe ( requestHeaders . cookie ) ;
46
- expect ( headers [ 'User-Agent' ] ) . toBe ( requestHeaders [ 'user-agent' ] ) ;
46
+ t . expect ( headers . Cookie ) . toBe ( requestHeaders . cookie ) ;
47
+ t . expect ( headers [ 'User-Agent' ] ) . toBe ( requestHeaders [ 'user-agent' ] ) ;
47
48
if ( NODE_MAJOR_VERSION >= 19 ) {
48
- expect ( headers . Connection ) . toBe ( 'keep-alive' ) ;
49
+ t . expect ( headers . Connection ) . toBe ( 'keep-alive' ) ;
49
50
} else {
50
- expect ( headers . Connection ) . toBe ( 'close' ) ;
51
+ t . expect ( headers . Connection ) . toBe ( 'close' ) ;
51
52
}
52
53
53
54
done ( ) ;
@@ -57,9 +58,9 @@ describe('TransformHeadersAgent', () => {
57
58
transformAgent . transformRequest ( request , { sortHeaders : true } ) ;
58
59
59
60
request . end ( ) ;
60
- } ) ;
61
+ } ) ) ;
61
62
62
- test ( 'leaves x-header as it is' , ( done ) => {
63
+ test ( 'leaves x-header as it is' , ( t ) => new Promise < void > ( ( done ) => {
63
64
const request = http . request ( `http://localhost:${ port } /headers` , {
64
65
headers : {
65
66
'x-foo' : 'bar' ,
@@ -69,8 +70,8 @@ describe('TransformHeadersAgent', () => {
69
70
const body = await getStream ( response ) ;
70
71
const headers = JSON . parse ( body ) ;
71
72
72
- expect ( headers [ 'x-foo' ] ) . toBe ( 'bar' ) ;
73
- expect ( headers [ 'x-this-doesnt-exist' ] ) . toBe ( 'definitely' ) ;
73
+ t . expect ( headers [ 'x-foo' ] ) . toBe ( 'bar' ) ;
74
+ t . expect ( headers [ 'x-this-doesnt-exist' ] ) . toBe ( 'definitely' ) ;
74
75
75
76
done ( ) ;
76
77
} ) ;
@@ -79,9 +80,9 @@ describe('TransformHeadersAgent', () => {
79
80
transformAgent . transformRequest ( request , { sortHeaders : true } ) ;
80
81
81
82
request . end ( ) ;
82
- } ) ;
83
+ } ) ) ;
83
84
84
- test ( 'http.request with agent' , ( done ) => {
85
+ test ( 'http.request with agent' , ( t ) => new Promise < void > ( ( done ) => {
85
86
const transformAgent = new TransformHeadersAgent ( new http . Agent ( {
86
87
keepAlive : true ,
87
88
} ) ) ;
@@ -92,17 +93,17 @@ describe('TransformHeadersAgent', () => {
92
93
const body = await getStream ( response ) ;
93
94
const headers = JSON . parse ( body ) ;
94
95
95
- expect ( headers . Connection ) . toBe ( 'keep-alive' ) ;
96
+ t . expect ( headers . Connection ) . toBe ( 'keep-alive' ) ;
96
97
97
98
transformAgent . destroy ( ) ;
98
99
99
100
done ( ) ;
100
101
} ) ;
101
102
102
103
request . end ( ) ;
103
- } ) ;
104
+ } ) ) ;
104
105
105
- test ( 'first header in sortedHeaders is always first' , ( done ) => {
106
+ test ( 'first header in sortedHeaders is always first' , ( t ) => new Promise < void > ( ( done ) => {
106
107
const transformAgent = new TransformHeadersAgent ( new http . Agent ( {
107
108
keepAlive : true ,
108
109
} ) ) ;
@@ -113,19 +114,19 @@ describe('TransformHeadersAgent', () => {
113
114
const body = await getStream ( response ) ;
114
115
const headers = JSON . parse ( body ) ;
115
116
116
- expect ( Object . keys ( headers ) [ 0 ] ) . toBe ( 'Host' ) ;
117
- expect ( headers . Host ) . toBe ( `localhost:${ port } ` ) ;
117
+ t . expect ( Object . keys ( headers ) [ 0 ] ) . toBe ( 'Host' ) ;
118
+ t . expect ( headers . Host ) . toBe ( `localhost:${ port } ` ) ;
118
119
119
120
transformAgent . destroy ( ) ;
120
121
121
122
done ( ) ;
122
123
} ) ;
123
124
124
125
request . end ( ) ;
125
- } ) ;
126
+ } ) ) ;
126
127
127
128
describe ( 'respects native behavior' , ( ) => {
128
- test ( 'content-length removal' , ( done ) => {
129
+ test ( 'content-length removal' , ( t ) => new Promise < void > ( ( done ) => {
129
130
const transformAgent = new TransformHeadersAgent ( new http . Agent ( {
130
131
keepAlive : true ,
131
132
} ) ) ;
@@ -136,7 +137,7 @@ describe('TransformHeadersAgent', () => {
136
137
const body = await getStream ( response ) ;
137
138
const headers = JSON . parse ( body ) ;
138
139
139
- expect ( headers [ 'Transfer-Encoding' ] ) . toBe ( 'chunked' ) ;
140
+ t . expect ( headers [ 'Transfer-Encoding' ] ) . toBe ( 'chunked' ) ;
140
141
141
142
transformAgent . destroy ( ) ;
142
143
@@ -146,9 +147,9 @@ describe('TransformHeadersAgent', () => {
146
147
request . removeHeader ( 'content-length' ) ;
147
148
148
149
request . end ( ) ;
149
- } ) ;
150
+ } ) ) ;
150
151
151
- test ( 'transfer-encoding removal' , ( done ) => {
152
+ test ( 'transfer-encoding removal' , ( t ) => new Promise < void > ( ( done ) => {
152
153
const transformAgent = new TransformHeadersAgent ( new http . Agent ( {
153
154
keepAlive : true ,
154
155
} ) ) ;
@@ -159,8 +160,8 @@ describe('TransformHeadersAgent', () => {
159
160
const body = await getStream ( response ) ;
160
161
const headers = JSON . parse ( body ) ;
161
162
162
- expect ( headers [ 'Transfer-Encoding' ] ) . toBe ( undefined ) ;
163
- expect ( headers [ 'Content-Length' ] ) . toBe ( undefined ) ;
163
+ t . expect ( headers [ 'Transfer-Encoding' ] ) . toBe ( undefined ) ;
164
+ t . expect ( headers [ 'Content-Length' ] ) . toBe ( undefined ) ;
164
165
165
166
transformAgent . destroy ( ) ;
166
167
@@ -171,9 +172,9 @@ describe('TransformHeadersAgent', () => {
171
172
request . removeHeader ( 'transfer-encoding' ) ;
172
173
173
174
request . end ( ) ;
174
- } ) ;
175
+ } ) ) ;
175
176
176
- test ( 'explicit content-length' , ( done ) => {
177
+ test ( 'explicit content-length' , ( t ) => new Promise < void > ( ( done ) => {
177
178
const transformAgent = new TransformHeadersAgent ( new http . Agent ( {
178
179
keepAlive : true ,
179
180
} ) ) ;
@@ -187,7 +188,7 @@ describe('TransformHeadersAgent', () => {
187
188
const body = await getStream ( response ) ;
188
189
const headers = JSON . parse ( body ) ;
189
190
190
- expect ( headers [ 'Content-Length' ] ) . toBe ( '5' ) ;
191
+ t . expect ( headers [ 'Content-Length' ] ) . toBe ( '5' ) ;
191
192
192
193
transformAgent . destroy ( ) ;
193
194
@@ -196,9 +197,9 @@ describe('TransformHeadersAgent', () => {
196
197
197
198
request . write ( 'hello' ) ;
198
199
request . end ( ) ;
199
- } ) ;
200
+ } ) ) ;
200
201
201
- test ( 'explicit connection' , ( done ) => {
202
+ test ( 'explicit connection' , ( t ) => new Promise < void > ( ( done ) => {
202
203
const transformAgent = new TransformHeadersAgent ( new http . Agent ( {
203
204
keepAlive : true ,
204
205
} ) ) ;
@@ -212,14 +213,14 @@ describe('TransformHeadersAgent', () => {
212
213
const body = await getStream ( response ) ;
213
214
const headers = JSON . parse ( body ) ;
214
215
215
- expect ( headers . Connection ) . toBe ( 'close' ) ;
216
+ t . expect ( headers . Connection ) . toBe ( 'close' ) ;
216
217
217
218
transformAgent . destroy ( ) ;
218
219
219
220
done ( ) ;
220
221
} ) ;
221
222
222
223
request . end ( ) ;
223
- } ) ;
224
+ } ) ) ;
224
225
} ) ;
225
226
} ) ;
0 commit comments