fixed logger tests
This commit is contained in:
parent
d836e766d5
commit
38b523d2c0
4 changed files with 21 additions and 19 deletions
|
|
@ -6,7 +6,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { describe, it, expect, beforeEach, afterEach } from 'bun:test';
|
import { describe, it, expect, beforeEach, afterEach } from 'bun:test';
|
||||||
import { Logger } from '../src';
|
import { Logger, shutdownLoggers } from '../src';
|
||||||
import { loggerTestHelpers } from './setup';
|
import { loggerTestHelpers } from './setup';
|
||||||
|
|
||||||
describe('Advanced Logger Features', () => {
|
describe('Advanced Logger Features', () => {
|
||||||
|
|
@ -16,14 +16,10 @@ describe('Advanced Logger Features', () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
testLoggerInstance = loggerTestHelpers.createTestLogger('advanced-features');
|
testLoggerInstance = loggerTestHelpers.createTestLogger('advanced-features');
|
||||||
logger = testLoggerInstance.logger;
|
logger = testLoggerInstance.logger;
|
||||||
});
|
}); afterEach(async () => {
|
||||||
|
|
||||||
afterEach(() => {
|
|
||||||
testLoggerInstance.clearCapturedLogs();
|
testLoggerInstance.clearCapturedLogs();
|
||||||
// Force garbage collection to clean up any potential circular references
|
// Clear any global logger cache
|
||||||
if (global.gc) {
|
await shutdownLoggers();
|
||||||
global.gc();
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('Complex Metadata Handling', () => {
|
describe('Complex Metadata Handling', () => {
|
||||||
|
|
@ -148,8 +144,7 @@ describe('Advanced Logger Features', () => {
|
||||||
expect(logs.length).toBe(1);
|
expect(logs.length).toBe(1);
|
||||||
expect(logs[0].context).toBe('batch processing');
|
expect(logs[0].context).toBe('batch processing');
|
||||||
});
|
});
|
||||||
|
it('should handle error objects with circular references', () => {
|
||||||
it('should handle error objects with circular references', () => {
|
|
||||||
const errorWithCircular: any = { name: 'CircularError', message: 'Circular reference error' };
|
const errorWithCircular: any = { name: 'CircularError', message: 'Circular reference error' };
|
||||||
// Create a simple circular reference
|
// Create a simple circular reference
|
||||||
errorWithCircular.self = errorWithCircular;
|
errorWithCircular.self = errorWithCircular;
|
||||||
|
|
@ -162,6 +157,9 @@ describe('Advanced Logger Features', () => {
|
||||||
const logs = testLoggerInstance.getCapturedLogs();
|
const logs = testLoggerInstance.getCapturedLogs();
|
||||||
expect(logs.length).toBe(1);
|
expect(logs.length).toBe(1);
|
||||||
expect(logs[0].level).toBe('error');
|
expect(logs[0].level).toBe('error');
|
||||||
|
|
||||||
|
// Clean up circular reference to prevent memory issues
|
||||||
|
delete errorWithCircular.self;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
describe('Performance and Edge Cases', () => {
|
describe('Performance and Edge Cases', () => {
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { describe, it, expect, beforeEach, afterEach } from 'bun:test';
|
import { describe, it, expect, beforeEach, afterEach } from 'bun:test';
|
||||||
import { Logger, getLogger, createLogger } from '../src';
|
import { Logger, getLogger, createLogger, shutdownLoggers } from '../src';
|
||||||
import { loggerTestHelpers } from './setup';
|
import { loggerTestHelpers } from './setup';
|
||||||
|
|
||||||
describe('Basic Logger Tests', () => {
|
describe('Basic Logger Tests', () => {
|
||||||
|
|
@ -16,9 +16,10 @@ describe('Basic Logger Tests', () => {
|
||||||
testLoggerInstance = loggerTestHelpers.createTestLogger('utils-test');
|
testLoggerInstance = loggerTestHelpers.createTestLogger('utils-test');
|
||||||
logger = testLoggerInstance.logger;
|
logger = testLoggerInstance.logger;
|
||||||
});
|
});
|
||||||
|
afterEach(async () => {
|
||||||
afterEach(() => {
|
|
||||||
testLoggerInstance.clearCapturedLogs();
|
testLoggerInstance.clearCapturedLogs();
|
||||||
|
// Clear any global logger cache
|
||||||
|
await shutdownLoggers();
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('Logger Factory Functions', () => {
|
describe('Logger Factory Functions', () => {
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,8 @@ import { describe, it, expect, beforeEach, afterEach } from 'bun:test';
|
||||||
import {
|
import {
|
||||||
Logger,
|
Logger,
|
||||||
createLogger,
|
createLogger,
|
||||||
getLogger
|
getLogger,
|
||||||
|
shutdownLoggers
|
||||||
} from '../src';
|
} from '../src';
|
||||||
import { loggerTestHelpers } from './setup';
|
import { loggerTestHelpers } from './setup';
|
||||||
|
|
||||||
|
|
@ -20,9 +21,10 @@ describe('Logger Integration Tests', () => {
|
||||||
testLoggerInstance = loggerTestHelpers.createTestLogger('integration-test');
|
testLoggerInstance = loggerTestHelpers.createTestLogger('integration-test');
|
||||||
logger = testLoggerInstance.logger;
|
logger = testLoggerInstance.logger;
|
||||||
});
|
});
|
||||||
|
afterEach(async () => {
|
||||||
afterEach(() => {
|
|
||||||
testLoggerInstance.clearCapturedLogs();
|
testLoggerInstance.clearCapturedLogs();
|
||||||
|
// Clear any global logger cache
|
||||||
|
await shutdownLoggers();
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('Core Logger Functionality', () => {
|
describe('Core Logger Functionality', () => {
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
* Provides utilities and mocks for testing logging operations.
|
* Provides utilities and mocks for testing logging operations.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Logger, LogMetadata } from '../src';
|
import { Logger, LogMetadata, shutdownLoggers } from '../src';
|
||||||
import { afterAll, afterEach, beforeAll, beforeEach } from 'bun:test';
|
import { afterAll, afterEach, beforeAll, beforeEach } from 'bun:test';
|
||||||
|
|
||||||
// Store original console methods
|
// Store original console methods
|
||||||
|
|
@ -178,8 +178,9 @@ beforeAll(() => {
|
||||||
});
|
});
|
||||||
|
|
||||||
// Clean up after each test
|
// Clean up after each test
|
||||||
afterEach(() => {
|
afterEach(async () => {
|
||||||
// loggerTestHelpers.clearCapturedLogs(); // REMOVE this if it targeted a global array
|
// Clear logger cache to prevent state pollution between tests
|
||||||
|
await shutdownLoggers();
|
||||||
});
|
});
|
||||||
|
|
||||||
// Restore everything after tests
|
// Restore everything after tests
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue