@wgtechlabs/log-engine
Version:
A lightweight, security-first logging utility with automatic data redaction for Node.js applications - the first logging library with built-in PII protection.
49 lines • 2.1 kB
JavaScript
;
/**
* Shared test utilities for log-engine tests
* Provides consistent console mocking and cleanup functionality across all test suites
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.restoreConsoleAfterEach = exports.setupConsoleBeforeEach = exports.restoreConsoleMocks = exports.setupConsoleMocks = void 0;
/**
* Sets up console mocks for testing log output
* Replaces console methods with Jest spies to capture and verify log calls
* @returns ConsoleMocks object containing all spy instances
*/
const setupConsoleMocks = () => {
const mockConsoleLog = jest.spyOn(console, 'log').mockImplementation();
const mockConsoleWarn = jest.spyOn(console, 'warn').mockImplementation();
const mockConsoleError = jest.spyOn(console, 'error').mockImplementation();
return { mockConsoleLog, mockConsoleWarn, mockConsoleError };
};
exports.setupConsoleMocks = setupConsoleMocks;
/**
* Restores console mocks after testing
* Cleans up Jest spies and restores original console functionality
* @param mocks - The ConsoleMocks object from setupConsoleMocks
*/
const restoreConsoleMocks = (mocks) => {
mocks.mockConsoleLog.mockRestore();
mocks.mockConsoleWarn.mockRestore();
mocks.mockConsoleError.mockRestore();
};
exports.restoreConsoleMocks = restoreConsoleMocks;
/**
* Convenience function for setting up console mocks in beforeEach hooks
* Identical to setupConsoleMocks but with a more descriptive name for test setup
* @returns ConsoleMocks object containing all spy instances
*/
const setupConsoleBeforeEach = () => {
return (0, exports.setupConsoleMocks)();
};
exports.setupConsoleBeforeEach = setupConsoleBeforeEach;
/**
* Convenience function for restoring console mocks in afterEach hooks
* Identical to restoreConsoleMocks but with a more descriptive name for test cleanup
* @param mocks - The ConsoleMocks object to restore
*/
const restoreConsoleAfterEach = (mocks) => {
(0, exports.restoreConsoleMocks)(mocks);
};
exports.restoreConsoleAfterEach = restoreConsoleAfterEach;
//# sourceMappingURL=test-utils.js.map