UNPKG

@rs-r2d2/log4ts

Version:

A powerful, flexible logging library for TypeScript inspired by Apache Log4j, featuring colored output and emojis

41 lines (40 loc) 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Logger_1 = require("../Logger"); const LogLevel_1 = require("../LogLevel"); describe('Logger', () => { let logger; let mockAppender; beforeEach(() => { mockAppender = { append: jest.fn(), setLayout: jest.fn() }; logger = new Logger_1.Logger('TestLogger'); logger.addAppender(mockAppender); }); test('should create log events with correct level and message', () => { logger.info('Test message'); expect(mockAppender.append).toHaveBeenCalledWith(expect.objectContaining({ level: LogLevel_1.LogLevel.INFO, message: 'Test message', loggerName: 'TestLogger' })); }); test('should handle placeholder substitution', () => { logger.debug('Test {} with {}', 'message', 123); expect(mockAppender.append).toHaveBeenCalledWith(expect.objectContaining({ level: LogLevel_1.LogLevel.DEBUG, message: 'Test message with 123' })); }); test('should handle error objects', () => { const error = new Error('Test error'); logger.error('Failed', error); expect(mockAppender.append).toHaveBeenCalledWith(expect.objectContaining({ level: LogLevel_1.LogLevel.ERROR, message: 'Failed', error })); }); });