diff --git a/tests/evaluate.spec.ts b/tests/evaluate.spec.ts index 36a929a..e25f9e6 100644 --- a/tests/evaluate.spec.ts +++ b/tests/evaluate.spec.ts @@ -50,7 +50,7 @@ test('browser_evaluate (element)', async ({ client, server }) => { })).toContainTextContent(`- Result: "red"`); }); -test('browser_evaluate (error)', async ({ client, server }) => { +test('browser_evaluate (error)', async ({ client, server, mcpBrowser }) => { expect(await client.callTool({ name: 'browser_navigate', arguments: { url: server.HELLO_WORLD }, @@ -68,6 +68,12 @@ test('browser_evaluate (error)', async ({ client, server }) => { expect(result.isError).toBe(true); // Check that JavaScript error details are contained in the response - expect(result.content?.[0].text).toContain('page._evaluateFunction'); - expect(result.content?.[0].text).toContain('undefinedVariable is not defined'); + if (mcpBrowser === 'webkit') { + // Webkit has different error message format + expect(result.content?.[0].text).toContain('undefinedVariable is not defined'); + } else { + // Chrome, Firefox, etc. include the Playwright evaluation context + expect(result.content?.[0].text).toContain('page._evaluateFunction'); + expect(result.content?.[0].text).toContain('undefinedVariable is not defined'); + } });