Files
dbmole-mcp/packages/core/test/unit/mcp/respond.test.ts
T

22 lines
831 B
TypeScript

import { describe, expect, it } from 'vitest'
import { errorMessage, fail, ok } from '../../../src/mcp/respond.js'
describe('respond helpers', () => {
it('ok wraps a JSON payload as text content', () => {
const r = ok({ a: 1 })
expect(r).toEqual({ content: [{ type: 'text', text: JSON.stringify({ a: 1 }) }] })
expect(r.isError).toBeUndefined()
})
it('fail returns an error result with the message text', () => {
const r = fail('boom')
expect(r.content).toEqual([{ type: 'text', text: 'boom' }])
expect(r.isError).toBe(true)
})
it('errorMessage extracts Error.message', () => {
expect(errorMessage(new Error('nope'))).toBe('nope')
})
it('errorMessage stringifies non-Errors', () => {
expect(errorMessage('plain')).toBe('plain')
})
})