Skip to content

Commit 7866d4e

Browse files
committed
test(vitest): Add type assertions to mockImplementation calls
Add 'as any' type assertions to mockImplementation calls to fix Vitest v4 constructor compatibility. This resolves the error: "() => mockServer is not a constructor" The assertions are necessary because Vitest v4 changed how mock constructors work. Added biome-ignore comments to document why 'any' is required.
1 parent 1b4516d commit 7866d4e

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

tests/mcp/mcpServer.test.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,8 @@ describe('MCP Server', () => {
8585
...createMockServerProps(),
8686
} as unknown as McpServer;
8787

88-
vi.mocked(McpServer).mockImplementation(() => mockMcpServer);
88+
// biome-ignore lint/suspicious/noExplicitAny: Vitest v4 requires any for constructor mocks
89+
vi.mocked(McpServer).mockImplementation(() => mockMcpServer as any);
8990
try {
9091
await runMcpServer({ processExit: mockExit });
9192
} catch (e) {
@@ -107,7 +108,8 @@ describe('MCP Server', () => {
107108
...createMockServerProps(),
108109
} as unknown as McpServer;
109110

110-
vi.mocked(McpServer).mockImplementation(() => mockServer);
111+
// biome-ignore lint/suspicious/noExplicitAny: Vitest v4 requires any for constructor mocks
112+
vi.mocked(McpServer).mockImplementation(() => mockServer as any);
111113
await expect(runMcpServer({ processExit: mockExit })).resolves.toBeUndefined();
112114
mockLogger.trace.mockClear();
113115
process.emit('SIGINT');
@@ -131,7 +133,8 @@ describe('MCP Server', () => {
131133
...createMockServerProps(),
132134
} as unknown as McpServer;
133135

134-
vi.mocked(McpServer).mockImplementation(() => mockServer);
136+
// biome-ignore lint/suspicious/noExplicitAny: Vitest v4 requires any for constructor mocks
137+
vi.mocked(McpServer).mockImplementation(() => mockServer as any);
135138
await expect(runMcpServer({ processExit: mockExit })).resolves.toBeUndefined();
136139
mockLogger.trace.mockClear();
137140
process.emit('SIGTERM');
@@ -156,7 +159,8 @@ describe('MCP Server', () => {
156159
...createMockServerProps(),
157160
} as unknown as McpServer;
158161

159-
vi.mocked(McpServer).mockImplementation(() => mockServer);
162+
// biome-ignore lint/suspicious/noExplicitAny: Vitest v4 requires any for constructor mocks
163+
vi.mocked(McpServer).mockImplementation(() => mockServer as any);
160164
await expect(runMcpServer({ processExit: mockExit })).resolves.toBeUndefined();
161165
mockLogger.error.mockClear();
162166
process.emit('SIGINT');

0 commit comments

Comments
 (0)