@@ -38,7 +38,7 @@ describe('fixRequestBody', () => {
38
38
jest . spyOn ( proxyRequest , 'setHeader' ) ;
39
39
jest . spyOn ( proxyRequest , 'write' ) ;
40
40
41
- fixRequestBody ( proxyRequest , createRequestWithBody ( undefined ) , fakeProxyResponse ( ) , { } ) ;
41
+ fixRequestBody ( proxyRequest , createRequestWithBody ( undefined ) ) ;
42
42
43
43
expect ( proxyRequest . setHeader ) . not . toHaveBeenCalled ( ) ;
44
44
expect ( proxyRequest . write ) . not . toHaveBeenCalled ( ) ;
@@ -51,7 +51,7 @@ describe('fixRequestBody', () => {
51
51
jest . spyOn ( proxyRequest , 'setHeader' ) ;
52
52
jest . spyOn ( proxyRequest , 'write' ) ;
53
53
54
- fixRequestBody ( proxyRequest , createRequestWithBody ( { } ) , fakeProxyResponse ( ) , { } ) ;
54
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { } ) ) ;
55
55
56
56
expect ( proxyRequest . setHeader ) . toHaveBeenCalled ( ) ;
57
57
expect ( proxyRequest . write ) . toHaveBeenCalled ( ) ;
@@ -64,12 +64,7 @@ describe('fixRequestBody', () => {
64
64
jest . spyOn ( proxyRequest , 'setHeader' ) ;
65
65
jest . spyOn ( proxyRequest , 'write' ) ;
66
66
67
- fixRequestBody (
68
- proxyRequest ,
69
- createRequestWithBody ( { someField : 'some value' } ) ,
70
- fakeProxyResponse ( ) ,
71
- { } ,
72
- ) ;
67
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { someField : 'some value' } ) ) ;
73
68
74
69
const expectedBody = JSON . stringify ( { someField : 'some value' } ) ;
75
70
expect ( proxyRequest . setHeader ) . toHaveBeenCalledWith ( 'Content-Length' , expectedBody . length ) ;
@@ -83,12 +78,7 @@ describe('fixRequestBody', () => {
83
78
jest . spyOn ( proxyRequest , 'setHeader' ) ;
84
79
jest . spyOn ( proxyRequest , 'write' ) ;
85
80
86
- fixRequestBody (
87
- proxyRequest ,
88
- createRequestWithBody ( { someField : 'some value' } ) ,
89
- fakeProxyResponse ( ) ,
90
- { } ,
91
- ) ;
81
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { someField : 'some value' } ) ) ;
92
82
93
83
const expectedBody = handlerFormDataBodyData ( 'multipart/form-data' , {
94
84
someField : 'some value' ,
@@ -112,12 +102,7 @@ describe('fixRequestBody', () => {
112
102
jest . spyOn ( proxyRequest , 'setHeader' ) ;
113
103
jest . spyOn ( proxyRequest , 'write' ) ;
114
104
115
- fixRequestBody (
116
- proxyRequest ,
117
- createRequestWithBody ( { someField : 'some value' } ) ,
118
- fakeProxyResponse ( ) ,
119
- { } ,
120
- ) ;
105
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { someField : 'some value' } ) ) ;
121
106
122
107
const expectedBody = handlerFormDataBodyData ( 'multipart/form-data' , {
123
108
someField : 'some value' ,
@@ -142,12 +127,7 @@ describe('fixRequestBody', () => {
142
127
jest . spyOn ( proxyRequest , 'setHeader' ) ;
143
128
jest . spyOn ( proxyRequest , 'write' ) ;
144
129
145
- fixRequestBody (
146
- proxyRequest ,
147
- createRequestWithBody ( { someField : 'some value' } ) ,
148
- fakeProxyResponse ( ) ,
149
- { } ,
150
- ) ;
130
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { someField : 'some value' } ) ) ;
151
131
const expectedBody = JSON . stringify ( { someField : 'some value' } ) ;
152
132
expect ( proxyRequest . setHeader ) . toHaveBeenCalledWith ( 'Content-Length' , expectedBody . length ) ;
153
133
expect ( proxyRequest . write ) . toHaveBeenCalledWith ( expectedBody ) ;
@@ -160,12 +140,7 @@ describe('fixRequestBody', () => {
160
140
jest . spyOn ( proxyRequest , 'setHeader' ) ;
161
141
jest . spyOn ( proxyRequest , 'write' ) ;
162
142
163
- fixRequestBody (
164
- proxyRequest ,
165
- createRequestWithBody ( { someField : 'some value' } ) ,
166
- fakeProxyResponse ( ) ,
167
- { } ,
168
- ) ;
143
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { someField : 'some value' } ) ) ;
169
144
170
145
const expectedBody = querystring . stringify ( { someField : 'some value' } ) ;
171
146
expect ( proxyRequest . setHeader ) . toHaveBeenCalledWith ( 'Content-Length' , expectedBody . length ) ;
@@ -179,12 +154,7 @@ describe('fixRequestBody', () => {
179
154
jest . spyOn ( proxyRequest , 'setHeader' ) ;
180
155
jest . spyOn ( proxyRequest , 'write' ) ;
181
156
182
- fixRequestBody (
183
- proxyRequest ,
184
- createRequestWithBody ( { someField : 'some value' } ) ,
185
- fakeProxyResponse ( ) ,
186
- { } ,
187
- ) ;
157
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { someField : 'some value' } ) ) ;
188
158
189
159
const expectedBody = querystring . stringify ( { someField : 'some value' } ) ;
190
160
expect ( proxyRequest . setHeader ) . toHaveBeenCalledWith ( 'Content-Length' , expectedBody . length ) ;
@@ -198,69 +168,34 @@ describe('fixRequestBody', () => {
198
168
jest . spyOn ( proxyRequest , 'setHeader' ) ;
199
169
jest . spyOn ( proxyRequest , 'write' ) ;
200
170
201
- fixRequestBody (
202
- proxyRequest ,
203
- createRequestWithBody ( { someField : 'some value' } ) ,
204
- fakeProxyResponse ( ) ,
205
- { } ,
206
- ) ;
171
+ fixRequestBody ( proxyRequest , createRequestWithBody ( { someField : 'some value' } ) ) ;
207
172
208
173
const expectedBody = JSON . stringify ( { someField : 'some value' } ) ;
209
174
expect ( proxyRequest . setHeader ) . toHaveBeenCalledWith ( 'Content-Length' , expectedBody . length ) ;
210
175
expect ( proxyRequest . write ) . toHaveBeenCalledTimes ( 1 ) ;
211
176
expect ( proxyRequest . write ) . toHaveBeenCalledWith ( expectedBody ) ;
212
177
} ) ;
213
178
214
- it ( 'should return 400 and abort request on "Connection: Upgrade" header ' , ( ) => {
179
+ it ( 'should not fixRequestBody() when there bodyParser fails ' , ( ) => {
215
180
const proxyRequest = fakeProxyRequest ( ) ;
216
- const request = createRequestWithBody ( { someField : 'some value' } ) ;
217
- const proxyResponse = fakeProxyResponse ( ) ;
218
- proxyRequest . setHeader ( 'connection' , 'upgrade' ) ;
219
- proxyRequest . setHeader ( 'content-type' , 'application/x-www-form-urlencoded' ) ;
220
-
221
- jest . spyOn ( proxyRequest , 'destroy' ) ;
222
- jest . spyOn ( request , 'destroy' ) ;
223
- jest . spyOn ( proxyResponse , 'writeHead' ) ;
224
- jest . spyOn ( proxyResponse , 'end' ) ;
225
-
226
- const logger = {
227
- error : jest . fn ( ) ,
228
- } ;
181
+ const request = {
182
+ get readableLength ( ) {
183
+ return 4444 ; // simulate bodyParser failure
184
+ } ,
185
+ } as BodyParserLikeRequest ;
229
186
230
- fixRequestBody ( proxyRequest , request , proxyResponse , { logger } ) ;
231
-
232
- expect ( proxyResponse . writeHead ) . toHaveBeenCalledWith ( 400 ) ;
233
- expect ( proxyResponse . end ) . toHaveBeenCalledTimes ( 1 ) ;
234
- expect ( proxyRequest . destroy ) . toHaveBeenCalledTimes ( 1 ) ;
235
- expect ( request . destroy ) . toHaveBeenCalledTimes ( 1 ) ;
236
- expect ( logger . error ) . toHaveBeenCalledWith (
237
- `[HPM] HPM_UNEXPECTED_CONNECTION_UPGRADE_HEADER. Aborted request: /test_path` ,
238
- ) ;
239
- } ) ;
240
-
241
- it ( 'should return 400 and abort request on invalid request data' , ( ) => {
242
- const proxyRequest = fakeProxyRequest ( ) ;
243
- const request = createRequestWithBody ( { 'INVALID \n\r DATA' : '' } ) ;
244
187
const proxyResponse = fakeProxyResponse ( ) ;
245
188
proxyRequest . setHeader ( 'content-type' , 'application/x-www-form-urlencoded' ) ;
246
189
190
+ jest . spyOn ( proxyRequest , 'write' ) ;
247
191
jest . spyOn ( proxyRequest , 'destroy' ) ;
248
- jest . spyOn ( request , 'destroy' ) ;
249
192
jest . spyOn ( proxyResponse , 'writeHead' ) ;
250
193
jest . spyOn ( proxyResponse , 'end' ) ;
251
194
252
- const logger = {
253
- error : jest . fn ( ) ,
254
- } ;
255
-
256
- fixRequestBody ( proxyRequest , request , proxyResponse , { logger } ) ;
195
+ fixRequestBody ( proxyRequest , request ) ;
257
196
258
- expect ( proxyResponse . writeHead ) . toHaveBeenCalledWith ( 400 ) ;
259
- expect ( proxyResponse . end ) . toHaveBeenCalledTimes ( 1 ) ;
260
- expect ( proxyRequest . destroy ) . toHaveBeenCalledTimes ( 1 ) ;
261
- expect ( request . destroy ) . toHaveBeenCalledTimes ( 1 ) ;
262
- expect ( logger . error ) . toHaveBeenCalledWith (
263
- `[HPM] HPM_INVALID_REQUEST_DATA. Aborted request: /test_path` ,
264
- ) ;
197
+ expect ( proxyResponse . end ) . toHaveBeenCalledTimes ( 0 ) ;
198
+ expect ( proxyRequest . write ) . toHaveBeenCalledTimes ( 0 ) ;
199
+ expect ( proxyRequest . destroy ) . toHaveBeenCalledTimes ( 0 ) ;
265
200
} ) ;
266
201
} ) ;
0 commit comments