@@ -3,11 +3,13 @@ import path from 'path'
33
44import { afterAll , beforeAll , describe , expect , test , vi } from 'vitest'
55import nock from 'nock'
6+ import type { Response } from 'express'
67
78import { get } from '@/tests/helpers/e2etest'
89import { checkCachingHeaders } from '@/tests/helpers/caching-headers'
910import { setDefaultFastlySurrogateKey } from '@/frame/middleware/set-fastly-surrogate-key'
1011import archivedEnterpriseVersionsAssets from '@/archives/middleware/archived-enterprise-versions-assets'
12+ import type { ExtendedRequest } from '@/types'
1113
1214function getNextStaticAsset ( directory : string ) {
1315 const root = path . join ( '.next' , 'static' , directory )
@@ -34,10 +36,10 @@ function mockRequest(requestPath: string, { headers }: { headers?: Record<string
3436}
3537
3638type MockResponse = {
37- status : number
38- statusCode : number
39- json ?: ( payload : any ) => void
40- send ?: ( body : any ) => void
39+ status : number | undefined
40+ statusCode : number | undefined
41+ json ?: ( payload : unknown ) => void
42+ send ?: ( body : unknown ) => void
4143 sendStatus ?: ( statusCode : number ) => void
4244 end ?: ( ) => void
4345 _json ?: string
@@ -50,17 +52,17 @@ type MockResponse = {
5052
5153const mockResponse = ( ) => {
5254 const res : MockResponse = {
53- status : undefined as any ,
54- statusCode : undefined as any ,
55+ status : undefined ,
56+ statusCode : undefined ,
5557 headers : { } ,
5658 }
5759 res . json = ( payload ) => {
58- res . _json = payload
60+ res . _json = payload as string
5961 }
6062 res . send = ( body ) => {
6163 res . status = 200
6264 res . statusCode = 200
63- res . _send = body
65+ res . _send = body as string
6466 }
6567 res . end = ( ) => {
6668 // Mock end method
@@ -86,7 +88,7 @@ const mockResponse = () => {
8688 return key in res . headers
8789 }
8890 // Add Express-style status method that supports chaining
89- ; ( res as any ) . status = ( code : number ) => {
91+ ; ( res as unknown as { status : ( code : number ) => MockResponse } ) . status = ( code : number ) => {
9092 res . status = code
9193 res . statusCode = code
9294 return res
@@ -222,7 +224,11 @@ describe('archived enterprise static assets', () => {
222224 throw new Error ( 'did not expect this to ever happen' )
223225 }
224226 setDefaultFastlySurrogateKey ( req , res , ( ) => { } )
225- await archivedEnterpriseVersionsAssets ( req as any , res as any , next )
227+ await archivedEnterpriseVersionsAssets (
228+ req as unknown as ExtendedRequest ,
229+ res as unknown as Response ,
230+ next ,
231+ )
226232 expect ( res . statusCode ) . toBe ( 200 )
227233 checkCachingHeaders ( res , false , 60 )
228234 } )
@@ -238,7 +244,11 @@ describe('archived enterprise static assets', () => {
238244 throw new Error ( 'did not expect this to ever happen' )
239245 }
240246 setDefaultFastlySurrogateKey ( req , res , ( ) => { } )
241- await archivedEnterpriseVersionsAssets ( req as any , res as any , next )
247+ await archivedEnterpriseVersionsAssets (
248+ req as unknown as ExtendedRequest ,
249+ res as unknown as Response ,
250+ next ,
251+ )
242252 expect ( res . statusCode ) . toBe ( 200 )
243253 checkCachingHeaders ( res , false , 60 )
244254 } )
@@ -254,7 +264,11 @@ describe('archived enterprise static assets', () => {
254264 throw new Error ( 'did not expect this to ever happen' )
255265 }
256266 setDefaultFastlySurrogateKey ( req , res , ( ) => { } )
257- await archivedEnterpriseVersionsAssets ( req as any , res as any , next )
267+ await archivedEnterpriseVersionsAssets (
268+ req as unknown as ExtendedRequest ,
269+ res as unknown as Response ,
270+ next ,
271+ )
258272 expect ( res . statusCode ) . toBe ( 200 )
259273 checkCachingHeaders ( res , false , 60 )
260274 } )
@@ -271,7 +285,11 @@ describe('archived enterprise static assets', () => {
271285 nexted = true
272286 }
273287 setDefaultFastlySurrogateKey ( req , res , next )
274- await archivedEnterpriseVersionsAssets ( req as any , res as any , next )
288+ await archivedEnterpriseVersionsAssets (
289+ req as unknown as ExtendedRequest ,
290+ res as unknown as Response ,
291+ next ,
292+ )
275293 // It didn't exit in that middleware but called next() to move on
276294 // with any other middlewares.
277295 expect ( nexted ) . toBe ( true )
@@ -289,7 +307,11 @@ describe('archived enterprise static assets', () => {
289307 nexted = true
290308 }
291309 setDefaultFastlySurrogateKey ( req , res , ( ) => { } )
292- await archivedEnterpriseVersionsAssets ( req as any , res as any , next )
310+ await archivedEnterpriseVersionsAssets (
311+ req as unknown as ExtendedRequest ,
312+ res as unknown as Response ,
313+ next ,
314+ )
293315 // It tried to go via the proxy, but it wasn't there, but then it
294316 // tried "our disk" and it's eventually there.
295317 expect ( nexted ) . toBe ( true )
@@ -335,7 +357,11 @@ describe('archived enterprise static assets', () => {
335357 nexted = true
336358 }
337359 setDefaultFastlySurrogateKey ( req , res , ( ) => { } )
338- await archivedEnterpriseVersionsAssets ( req as any , res as any , next )
360+ await archivedEnterpriseVersionsAssets (
361+ req as unknown as ExtendedRequest ,
362+ res as unknown as Response ,
363+ next ,
364+ )
339365 expect ( res . statusCode ) . toBe ( expectStatus )
340366 if ( shouldCallNext ) {
341367 expect ( nexted ) . toBe ( true )
@@ -374,7 +400,11 @@ describe('archived enterprise static assets', () => {
374400 nexted = true
375401 }
376402 setDefaultFastlySurrogateKey ( req , res , ( ) => { } )
377- await archivedEnterpriseVersionsAssets ( req as any , res as any , next )
403+ await archivedEnterpriseVersionsAssets (
404+ req as unknown as ExtendedRequest ,
405+ res as unknown as Response ,
406+ next ,
407+ )
378408 expect ( nexted ) . toBe ( shouldCallNext )
379409 expect ( res . statusCode ) . toBe ( expectStatus )
380410 } )
0 commit comments