Skip to main content
Glama
index-functions-coverage.test.ts2.91 kB
// Mock Octokit for GitHub Activity tool const mockListPublicEventsForUser = jest.fn(); jest.mock("@octokit/rest", () => ({ Octokit: jest.fn().mockImplementation(() => ({ rest: { activity: { listPublicEventsForUser: mockListPublicEventsForUser, }, }, })), })); import { registerAllResources } from "../resources/index"; import { registerAllTools } from "../tools/index"; // Mock all individual registration functions jest.mock("../resources/about-duyet", () => ({ registerAboutDuyetResource: jest.fn(), })); jest.mock("../resources/cv", () => ({ registerCVResource: jest.fn(), })); jest.mock("../resources/blog-posts", () => ({ registerBlogPostsResource: jest.fn(), })); jest.mock("../tools/github-activity", () => ({ registerGitHubActivityTool: jest.fn(), })); jest.mock("../tools/hire-me", () => ({ registerHireMeTool: jest.fn(), })); jest.mock("../tools/say-hi", () => ({ registerSayHiTool: jest.fn(), })); jest.mock("../tools/send-message", () => ({ registerSendMessageTool: jest.fn(), })); jest.mock("../tools/contact-analytics", () => ({ registerGetAnalyticsTool: jest.fn(), })); const mockServer = { registerResource: jest.fn(), registerTool: jest.fn(), } as any; const mockEnv = { DB: {} as D1Database, } as Env; describe("Index Functions Coverage", () => { beforeEach(() => { jest.clearAllMocks(); }); describe("Resources Index", () => { test("should call registerAllResources and invoke all resource registrations", () => { const { registerAboutDuyetResource } = require("../resources/about-duyet"); const { registerCVResource } = require("../resources/cv"); const { registerBlogPostsResource } = require("../resources/blog-posts"); registerAllResources(mockServer, mockEnv); expect(registerAboutDuyetResource).toHaveBeenCalledWith(mockServer); expect(registerCVResource).toHaveBeenCalledWith(mockServer); expect(registerBlogPostsResource).toHaveBeenCalledWith(mockServer); // GitHub activity is now a tool, not a resource }); }); describe("Tools Index", () => { test("should call registerAllTools and invoke all tool registrations", () => { const { registerGitHubActivityTool } = require("../tools/github-activity"); const { registerHireMeTool } = require("../tools/hire-me"); const { registerSayHiTool } = require("../tools/say-hi"); const { registerSendMessageTool } = require("../tools/send-message"); const { registerGetAnalyticsTool } = require("../tools/contact-analytics"); registerAllTools(mockServer, mockEnv); expect(registerGitHubActivityTool).toHaveBeenCalledWith(mockServer); expect(registerHireMeTool).toHaveBeenCalledWith(mockServer, mockEnv); expect(registerSayHiTool).toHaveBeenCalledWith(mockServer); expect(registerSendMessageTool).toHaveBeenCalledWith(mockServer, mockEnv); expect(registerGetAnalyticsTool).toHaveBeenCalledWith(mockServer, mockEnv); }); }); });

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/duyet/duyet-mcp-server'

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