const { NestFactory } = require('@nestjs/core'); const { AppModule } = require('./dist/src/app.module'); const { UnifiedQueueService } = require('./dist/src/core/queue/unified-queue.service'); async function testQueueFunctionality() { console.log('🚀 开始测试队列系统功能...'); try { // 创建应用实例 const app = await NestFactory.create(AppModule, { logger: false }); const queueService = app.get(UnifiedQueueService); console.log('✅ 应用启动成功'); console.log('✅ UnifiedQueueService 注入成功'); // 测试添加任务 console.log('\n📝 测试添加任务...'); const taskResult = await queueService.addTask('test-queue', { data: { message: 'Hello Queue!', timestamp: Date.now() }, priority: 1, delay: 0, attempts: 3, }); console.log('✅ 任务添加成功:', taskResult ? '有返回值' : '无返回值'); // 测试发布事件 console.log('\n📡 测试发布事件...'); const event = { eventType: 'test.functionality.event', aggregateId: 'test-func-123', aggregateType: 'TestFunctionality', version: '1.0', occurredAt: new Date().toISOString(), tenantId: 'tenant-test', idempotencyKey: 'func-test-key-' + Date.now(), traceId: 'func-test-trace-' + Date.now(), data: { test: 'functionality-test', success: true }, }; await queueService.publishEvent(event); console.log('✅ 事件发布成功'); // 测试获取队列状态 console.log('\n📊 测试获取队列状态...'); const status = await queueService.getQueueStatus(); console.log('✅ 队列状态获取成功:', JSON.stringify(status, null, 2)); console.log('\n🎉 所有测试通过!队列系统功能正常'); await app.close(); } catch (error) { console.error('❌ 测试失败:', error.message); console.error('详细错误:', error.stack); process.exit(1); } } // 运行测试 testQueueFunctionality().then(() => { console.log('\n✨ 队列系统功能测试完成'); process.exit(0); }).catch((error) => { console.error('❌ 测试执行失败:', error); process.exit(1); });