Skip to main content
Glama
user.ts3.15 kB
/** * Mock responses for User entity */ /** * Create a mock business membership object */ export function createMockBusinessMembership(overrides: Record<string, unknown> = {}) { const id = (overrides.id as number) || 123456; return { id, name: overrides.name || 'Test Business Inc.', accountId: overrides.accountId || `ABC${id}`, role: overrides.role || 'owner', }; } /** * Create a mock user object */ export function createMockUser(overrides: Record<string, unknown> = {}) { const id = (overrides.id as number) || 1; return { id, email: overrides.email || 'user@example.com', firstName: overrides.firstName || 'John', lastName: overrides.lastName || 'Doe', businessMemberships: overrides.businessMemberships || [ createMockBusinessMembership(), ], phoneNumbers: overrides.phoneNumbers || [ { title: 'Mobile', number: '+1-555-123-4567', }, ], addresses: overrides.addresses || [ { street: '123 Main Street', city: 'Toronto', province: 'ON', country: 'Canada', postalCode: 'M5V 2H1', }, ], profession: overrides.profession || 'Software Developer', links: overrides.links || { me: '/service/auth/api/v1/users/1', }, ...overrides, }; } /** * Mock response for user me (get current user) */ export function mockUserMeResponse(overrides: Record<string, unknown> = {}) { return { ok: true, data: createMockUser(overrides), }; } /** * Mock response for user with multiple business memberships */ export function mockUserMultipleBusinessesResponse() { return { ok: true, data: createMockUser({ businessMemberships: [ createMockBusinessMembership({ id: 111111, name: 'Business One', role: 'owner' }), createMockBusinessMembership({ id: 222222, name: 'Business Two', role: 'admin' }), createMockBusinessMembership({ id: 333333, name: 'Business Three', role: 'employee' }), ], }), }; } /** * Mock response for user with minimal data */ export function mockUserMinimalResponse() { return { ok: true, data: { id: 1, email: 'minimal@example.com', firstName: 'Min', lastName: 'User', businessMemberships: [ createMockBusinessMembership(), ], phoneNumbers: [], addresses: [], }, }; } /** * Mock response for user with no optional fields */ export function mockUserNoOptionalFieldsResponse() { return { ok: true, data: { id: 1, email: 'basic@example.com', firstName: 'Basic', lastName: 'User', businessMemberships: [ createMockBusinessMembership(), ], }, }; } /** * Mock response for user with unicode characters */ export function mockUserUnicodeResponse() { return { ok: true, data: createMockUser({ firstName: '山田', lastName: '太郎', email: 'yamada@example.jp', profession: 'デザイナー 🎨', businessMemberships: [ createMockBusinessMembership({ name: '株式会社テスト' }), ], }), }; }

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/Good-Samaritan-Software-LLC/freshbooks-mcp'

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