mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-01-30 06:22:04 +00:00
Implements comprehensive workflow creation tests against real n8n instance with 15 test scenarios covering P0 bugs, base nodes, advanced features, error scenarios, and edge cases. Key Changes: - Added 15 workflow creation test scenarios in create-workflow.test.ts - Fixed critical MSW interference with real API calls - Fixed environment loading priority (.env before test defaults) - Implemented multi-level cleanup with webhook workflow preservation - Migrated from webhook IDs to webhook URLs configuration - Added TypeScript type safety fixes (26 errors resolved) - Updated test names to reflect actual n8n API behavior Bug Fixes: - Removed MSW from integration test setup (was blocking real API calls) - Fixed .env loading order to preserve real credentials over test defaults - Added type guards for undefined workflow IDs - Fixed position arrays to use proper tuple types [number, number] - Added literal types for executionOrder and settings values Test Coverage: - P0: Critical bug verification (FULL vs SHORT node type format) - P1: Base n8n nodes (webhook, HTTP, langchain, multi-node) - P2: Advanced features (connections, settings, expressions, error handling) - Error scenarios (documents actual n8n API validation behavior) - Edge cases (minimal workflows, empty connections, no settings) Technical Improvements: - Cleanup strategy preserves pre-activated webhook workflows - Single webhook URL accepts all HTTP methods (GET, POST, PUT, DELETE) - Environment-aware credential loading with validation - Comprehensive test context for resource tracking All 15 tests passing ✅ TypeScript: 0 errors ✅ 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
29 lines
886 B
TypeScript
29 lines
886 B
TypeScript
import { defineConfig, mergeConfig } from 'vitest/config';
|
|
import baseConfig from './vitest.config';
|
|
|
|
export default mergeConfig(
|
|
baseConfig,
|
|
defineConfig({
|
|
test: {
|
|
// Include global setup, but NOT integration-setup.ts for n8n-api tests
|
|
// (they need real network requests, not MSW mocks)
|
|
setupFiles: ['./tests/setup/global-setup.ts'],
|
|
// Only include integration tests
|
|
include: ['tests/integration/**/*.test.ts'],
|
|
// Integration tests might need more time
|
|
testTimeout: 30000,
|
|
// Specific pool options for integration tests
|
|
poolOptions: {
|
|
threads: {
|
|
// Run integration tests sequentially by default
|
|
singleThread: true,
|
|
maxThreads: 1
|
|
}
|
|
},
|
|
// Disable coverage for integration tests or set lower thresholds
|
|
coverage: {
|
|
enabled: false
|
|
}
|
|
}
|
|
})
|
|
); |