Skip to main content
Glama
itsocialist

Claude Code Connector MCP

by itsocialist
register_project.test.ts1.99 kB
import { registerProject } from '../../src/tools/register_project'; import { ErrorCode } from '../../src/models/types'; import { ProjectManager } from '../../src/services/project_manager'; // Mock ProjectManager jest.mock('../../src/services/project_manager'); describe('register_project', () => { let mockValidateProjectPath: jest.Mock; let mockAddProject: jest.Mock; beforeEach(() => { // Reset mocks jest.clearAllMocks(); mockValidateProjectPath = jest.fn(); mockAddProject = jest.fn(); // Setup mock implementation (ProjectManager as jest.Mock).mockImplementation(() => ({ validateProjectPath: mockValidateProjectPath, addProject: mockAddProject })); }); it('should register a valid project', async () => { mockValidateProjectPath.mockResolvedValue(true); mockAddProject.mockResolvedValue(undefined); const result = await registerProject({ name: 'Test Project', rootPath: '/tmp/test-project', }); expect(result.success).toBe(true); expect(result.projectId).toBe('test-project'); expect(mockValidateProjectPath).toHaveBeenCalledWith('/tmp/test-project'); expect(mockAddProject).toHaveBeenCalled(); }); it('should reject non-existent path', async () => { mockValidateProjectPath.mockResolvedValue(false); await expect( registerProject({ name: 'Bad Project', rootPath: '/nonexistent/path', }) ).rejects.toThrow(expect.objectContaining({ code: ErrorCode.INVALID_PATH })); }); it('should reject missing args', async () => { await expect( // @ts-ignore registerProject({ name: 'Bad Project', }) ).rejects.toThrow(expect.objectContaining({ code: ErrorCode.INVALID_ARGUMENTS })); }); });

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/itsocialist/claude-code-connector-mcp'

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