Skip to main content
Glama
naoto24kawa

Composer Package README MCP Server

by naoto24kawa
readme-parser.test.ts2.48 kB
import { expect, test, describe } from "vitest"; describe('ReadmeParser', () => { test('should exist and be constructable', () => { const { ReadmeParser } = require('../../dist/src/services/readme-parser.js'); expect(typeof ReadmeParser).toBe('function'); const parser = new ReadmeParser(); expect(parser).toBeDefined(); }); test('should have required methods', () => { const { ReadmeParser } = require('../../dist/src/services/readme-parser.js'); const parser = new ReadmeParser(); expect(typeof parser.parseUsageExamples).toBe('function'); expect(typeof parser.cleanMarkdown).toBe('function'); expect(typeof parser.extractDescription).toBe('function'); }); test('should parse usage examples from markdown', () => { const { ReadmeParser } = require('../../dist/src/services/readme-parser.js'); const parser = new ReadmeParser(); const markdown = `# Test Package ## Usage \`\`\`php <?php use Test\\Package; $package = new Package(); \`\`\` `; const examples = parser.parseUsageExamples(markdown, true); expect(Array.isArray(examples)).toBe(true); }); test('should return empty array when includeExamples is false', () => { const { ReadmeParser } = require('../../dist/src/services/readme-parser.js'); const parser = new ReadmeParser(); const markdown = `# Test Package ## Usage \`\`\`php <?php echo "test"; \`\`\` `; const examples = parser.parseUsageExamples(markdown, false); expect(examples).toEqual([]); }); test('should clean markdown content', () => { const { ReadmeParser } = require('../../dist/src/services/readme-parser.js'); const parser = new ReadmeParser(); const markdown = `# Test ![Build Status](https://example.com/badge.svg) Some content.`; const cleaned = parser.cleanMarkdown(markdown); expect(typeof cleaned).toBe('string'); expect(cleaned).toContain('Test'); expect(cleaned).toContain('Some content'); }); test('should extract description from markdown', () => { const { ReadmeParser } = require('../../dist/src/services/readme-parser.js'); const parser = new ReadmeParser(); const markdown = `# Test Package This is a comprehensive package for testing purposes. ## Installation Run composer install.`; const description = parser.extractDescription(markdown); expect(typeof description).toBe('string'); expect(description.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/naoto24kawa/composer-package-readme-mcp-server'

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