// 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)); });