Some checks failed
Deploy / deploy (push) Has been cancelled
Full-stack web application for Telegram management - Frontend: Vue 3 + Vben Admin - Backend: NestJS - Features: User management, group broadcast, statistics 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
42 lines
1021 B
JavaScript
42 lines
1021 B
JavaScript
// Global test setup
|
|
|
|
// Set test environment
|
|
process.env.NODE_ENV = 'test';
|
|
process.env.LOG_LEVEL = 'error'; // Reduce log noise during tests
|
|
|
|
// Mock console methods to reduce noise
|
|
global.console = {
|
|
...console,
|
|
log: jest.fn(),
|
|
debug: jest.fn(),
|
|
info: jest.fn(),
|
|
warn: jest.fn(),
|
|
error: jest.fn()
|
|
};
|
|
|
|
// Global test utilities
|
|
global.testUtils = {
|
|
// Generate random ID
|
|
randomId: () => Math.random().toString(36).substring(7),
|
|
|
|
// Generate random email
|
|
randomEmail: () => `test${Date.now()}@example.com`,
|
|
|
|
// Generate random phone
|
|
randomPhone: () => `+1${Math.floor(Math.random() * 9000000000) + 1000000000}`,
|
|
|
|
// Sleep helper
|
|
sleep: (ms) => new Promise(resolve => setTimeout(resolve, ms)),
|
|
|
|
// Deep clone helper
|
|
deepClone: (obj) => JSON.parse(JSON.stringify(obj))
|
|
};
|
|
|
|
// Set longer timeout for integration tests
|
|
jest.setTimeout(30000);
|
|
|
|
// Clean up after all tests
|
|
afterAll(async () => {
|
|
// Close any open handles
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
}); |