Skip to main content
Glama
field-mapper-uniqueness-errors.test.tsβ€’2.12 kB
/** * Split: field-mapper – uniqueness error enhancement */ import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest'; import { UniversalResourceType } from '../../../../src/handlers/tool-configs/universal/types.js'; import { enhanceUniquenessError } from '../../../../src/handlers/tool-configs/universal/field-mapper.js'; // Matches original mocks vi.mock('../../../../src/api/attio-client.js', () => ({ getAttioClient: vi.fn(() => ({ objects: { companies: { get: vi.fn(() => Promise.resolve({ data: { id: { record_id: 'mock-company-id' }, values: { domains: ['example.com'] }, }, }) ), }, }, post: vi.fn(() => Promise.resolve({ data: { data: [] } })), get: vi.fn(() => Promise.resolve({ data: { data: [] } })), })), })); vi.mock('../../../../src/handlers/tool-configs/universal/config.js', () => ({ strictModeFor: vi.fn(() => false), })); describe('field-mapper – uniqueness error enhancement', () => { beforeEach(() => { vi.clearAllMocks(); }); afterEach(() => { vi.clearAllMocks(); }); it('returns original message when no attribute ID pattern found', async () => { const result = await enhanceUniquenessError( UniversalResourceType.COMPANIES, 'Uniqueness constraint violation on field "name"', { name: 'Duplicate Corp' } ); expect(result).toBeTypeOf('string'); }); it('returns original message when field cannot be extracted', async () => { const result = await enhanceUniquenessError( UniversalResourceType.COMPANIES, 'Generic uniqueness error', { name: 'Test Corp' } ); expect(result).toBeTypeOf('string'); }); it('attempts enhancement with attribute ID pattern', async () => { const result = await enhanceUniquenessError( UniversalResourceType.COMPANIES, 'Uniqueness constraint violation for attribute with ID "company-name"', { name: 'Test Corp' } ); expect(typeof result).toBe('string'); expect(result.length).toBeGreaterThan(0); }); });

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kesslerio/attio-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server