UNPKG

n8n-mcp

Version:

Integration between n8n workflow automation and Model Context Protocol (MCP)

74 lines 2.99 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const node_parser_1 = require("../parsers/node-parser"); async function testVersionExtraction() { console.log('Testing version extraction from different node types...\n'); const parser = new node_parser_1.NodeParser(); const testCases = [ { name: 'Gmail Trigger (version array)', nodeType: 'nodes-base.gmailTrigger', expectedVersion: '1.2', expectedVersioned: true }, { name: 'HTTP Request (VersionedNodeType)', nodeType: 'nodes-base.httpRequest', expectedVersion: '4.2', expectedVersioned: true }, { name: 'Code (version array)', nodeType: 'nodes-base.code', expectedVersion: '2', expectedVersioned: true } ]; const basePackagePath = process.cwd() + '/node_modules/n8n/node_modules/n8n-nodes-base'; for (const testCase of testCases) { console.log(`\nTesting: ${testCase.name}`); console.log(`Node Type: ${testCase.nodeType}`); try { const nodeName = testCase.nodeType.split('.')[1]; const possiblePaths = [ `${basePackagePath}/dist/nodes/${nodeName}.node.js`, `${basePackagePath}/dist/nodes/Google/Gmail/GmailTrigger.node.js`, `${basePackagePath}/dist/nodes/HttpRequest/HttpRequest.node.js`, `${basePackagePath}/dist/nodes/Code/Code.node.js` ]; let nodeClass = null; for (const path of possiblePaths) { try { const module = require(path); nodeClass = module[Object.keys(module)[0]]; if (nodeClass) break; } catch (e) { } } if (!nodeClass) { console.log('❌ Could not load node'); continue; } const parsed = parser.parse(nodeClass, 'n8n-nodes-base'); console.log(`Loaded node: ${parsed.displayName} (${parsed.nodeType})`); console.log(`Extracted version: ${parsed.version}`); console.log(`Is versioned: ${parsed.isVersioned}`); console.log(`Expected version: ${testCase.expectedVersion}`); console.log(`Expected versioned: ${testCase.expectedVersioned}`); if (parsed.version === testCase.expectedVersion && parsed.isVersioned === testCase.expectedVersioned) { console.log('✅ PASS'); } else { console.log('❌ FAIL'); } } catch (error) { console.log(`❌ Error: ${error instanceof Error ? error.message : String(error)}`); } } } testVersionExtraction().catch(console.error); //# sourceMappingURL=test-version-extraction.js.map