Skip to main content
Glama
index-functions-coverage.test.ts2.88 kB
// Mock fetch for GitHub Activity tool const mockFetch = jest.fn(); global.fetch = mockFetch; 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, ); }); }); });

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

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