@@ -45,7 +45,8 @@ vi.mock('next/headers', () => ({
45
45
} ) ) ,
46
46
} ) ) ;
47
47
48
- const mockHeaders = headers as unknown as MockedFunction < ( ) => Promise < MockHeaders > > ;
48
+ type MockHeadersFn = ( ) => MockHeaders | Promise < MockHeaders > ;
49
+ const mockHeaders = headers as unknown as MockedFunction < MockHeadersFn > ;
49
50
50
51
// Type for mocking Next.js headers
51
52
interface MockHeaders {
@@ -66,7 +67,7 @@ function createMockHeaders(customHeaders: Record<string, string | null> = {}): M
66
67
const allHeaders = { ...defaultHeadersObj , ...customHeaders } ;
67
68
68
69
return {
69
- get : vi . fn ( ( name : string ) => allHeaders [ name ] || null ) ,
70
+ get : vi . fn ( ( name : string ) => allHeaders [ name ] ?? null ) ,
70
71
has : vi . fn ( ( name : string ) => Object . prototype . hasOwnProperty . call ( allHeaders , name ) && allHeaders [ name ] !== null ) ,
71
72
forEach : vi . fn ( ( callback : ( value : string , key : string ) => void ) => {
72
73
Object . entries ( allHeaders ) . forEach ( ( [ key , value ] ) => {
@@ -93,16 +94,14 @@ function createMockHeaders(customHeaders: Record<string, string | null> = {}): M
93
94
94
95
describe ( 'keyless-custom-headers' , ( ) => {
95
96
beforeEach ( ( ) => {
96
- // Reset all mocks before each test
97
97
vi . clearAllMocks ( ) ;
98
- mockHeaders . mockReset ( ) ;
99
- // Default: use the defaultMockHeaders bag
100
98
mockHeaders . mockImplementation ( async ( ) => createMockHeaders ( ) ) ;
101
99
} ) ;
102
100
103
101
afterEach ( ( ) => {
104
102
vi . restoreAllMocks ( ) ;
105
103
vi . unstubAllEnvs ( ) ;
104
+ mockHeaders . mockReset ( ) ;
106
105
} ) ;
107
106
108
107
describe ( 'formatMetadataHeaders' , ( ) => {
0 commit comments