73 lines
2.3 KiB
JavaScript
73 lines
2.3 KiB
JavaScript
import { fileURLToPath } from 'url';
|
|
import { dirname, join } from 'path';
|
|
import { config as dotenvConfig } from 'dotenv';
|
|
|
|
const __filename = fileURLToPath(import.meta.url);
|
|
const __dirname = dirname(__filename);
|
|
|
|
// Load environment variables
|
|
const projectRoot = join(__dirname, '../../..');
|
|
dotenvConfig({ path: join(projectRoot, '.env') });
|
|
|
|
export const testConfig = {
|
|
// Paths
|
|
paths: {
|
|
projectRoot,
|
|
sourceDir: projectRoot,
|
|
baseTestDir: join(projectRoot, 'tests/e2e/_runs'),
|
|
logDir: join(projectRoot, 'tests/e2e/log'),
|
|
samplePrdSource: join(projectRoot, 'tests/fixtures/sample-prd.txt'),
|
|
mainEnvFile: join(projectRoot, '.env'),
|
|
supportedModelsFile: join(
|
|
projectRoot,
|
|
'scripts/modules/supported-models.json'
|
|
)
|
|
},
|
|
|
|
// Test settings
|
|
settings: {
|
|
runVerificationTest: true,
|
|
parallelTestGroups: 4, // Number of parallel test groups
|
|
timeout: 600000, // 10 minutes default timeout
|
|
retryAttempts: 2
|
|
},
|
|
|
|
// Provider test configuration
|
|
providers: [
|
|
{ name: 'anthropic', model: 'claude-3-7-sonnet-20250219', flags: [] },
|
|
{ name: 'openai', model: 'gpt-4o', flags: [] },
|
|
{ name: 'google', model: 'gemini-2.5-pro-preview-05-06', flags: [] },
|
|
{ name: 'perplexity', model: 'sonar-pro', flags: [] },
|
|
{ name: 'xai', model: 'grok-3', flags: [] },
|
|
{ name: 'openrouter', model: 'anthropic/claude-3.7-sonnet', flags: [] }
|
|
],
|
|
|
|
// Test prompts
|
|
prompts: {
|
|
addTask:
|
|
'Create a task to implement user authentication using OAuth 2.0 with Google as the provider. Include steps for registering the app, handling the callback, and storing user sessions.',
|
|
updateTask:
|
|
'Update backend server setup: Ensure CORS is configured to allow requests from the frontend origin.',
|
|
updateFromTask:
|
|
'Refactor the backend storage module to use a simple JSON file (storage.json) instead of an in-memory object for persistence. Update relevant tasks.',
|
|
updateSubtask:
|
|
'Implementation note: Remember to handle potential API errors and display a user-friendly message.'
|
|
},
|
|
|
|
// LLM Analysis settings
|
|
llmAnalysis: {
|
|
enabled: true,
|
|
model: 'claude-3-7-sonnet-20250219',
|
|
provider: 'anthropic',
|
|
maxTokens: 3072
|
|
}
|
|
};
|
|
|
|
// Export test groups for parallel execution
|
|
export const testGroups = {
|
|
setup: ['setup'],
|
|
core: ['core'],
|
|
providers: ['providers'],
|
|
advanced: ['advanced']
|
|
};
|