Skip to main content
Glama
test-summary.js3.46 kB
#!/usr/bin/env npx tsx "use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const database_adapter_1 = require("../database/database-adapter"); const node_repository_1 = require("../database/node-repository"); const node_similarity_service_1 = require("../services/node-similarity-service"); const path_1 = __importDefault(require("path")); async function testSummary() { const dbPath = path_1.default.join(process.cwd(), 'data/nodes.db'); const db = await (0, database_adapter_1.createDatabaseAdapter)(dbPath); const repository = new node_repository_1.NodeRepository(db); const similarityService = new node_similarity_service_1.NodeSimilarityService(repository); const testCases = [ { invalid: 'HttpRequest', expected: 'nodes-base.httpRequest' }, { invalid: 'HTTPRequest', expected: 'nodes-base.httpRequest' }, { invalid: 'Webhook', expected: 'nodes-base.webhook' }, { invalid: 'WebHook', expected: 'nodes-base.webhook' }, { invalid: 'slack', expected: 'nodes-base.slack' }, { invalid: 'googleSheets', expected: 'nodes-base.googleSheets' }, { invalid: 'telegram', expected: 'nodes-base.telegram' }, { invalid: 'htpRequest', expected: 'nodes-base.httpRequest' }, { invalid: 'webook', expected: 'nodes-base.webhook' }, { invalid: 'slak', expected: 'nodes-base.slack' }, { invalid: 'http', expected: 'nodes-base.httpRequest' }, { invalid: 'sheet', expected: 'nodes-base.googleSheets' }, { invalid: 'nodes-base.openai', expected: 'nodes-langchain.openAi' }, { invalid: 'n8n-nodes-base.httpRequest', expected: 'nodes-base.httpRequest' }, { invalid: 'foobar', expected: null }, { invalid: 'xyz123', expected: null }, ]; let passed = 0; let failed = 0; console.log('Test Results Summary:'); console.log('='.repeat(60)); for (const testCase of testCases) { const suggestions = await similarityService.findSimilarNodes(testCase.invalid, 3); let result = '❌'; let status = 'FAILED'; if (testCase.expected === null) { if (suggestions.length === 0) { result = '✅'; status = 'PASSED'; passed++; } else { failed++; } } else { const found = suggestions.some(s => s.nodeType === testCase.expected); if (found) { const suggestion = suggestions.find(s => s.nodeType === testCase.expected); const isAutoFixable = suggestion && suggestion.confidence >= 0.9; result = '✅'; status = isAutoFixable ? 'PASSED (auto-fixable)' : 'PASSED'; passed++; } else { failed++; } } console.log(`${result} "${testCase.invalid}" → ${testCase.expected || 'no suggestions'}: ${status}`); } console.log('='.repeat(60)); console.log(`\nTotal: ${passed}/${testCases.length} tests passed`); if (failed === 0) { console.log('🎉 All tests passed!'); } else { console.log(`⚠️ ${failed} tests failed`); } } testSummary().catch(console.error); //# sourceMappingURL=test-summary.js.map

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/czlonkowski/n8n-mcp'

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