Files
AFFiNE-Mirror/packages/debug/src/__tests__/index.spec.ts
2023-03-28 02:07:26 -05:00

34 lines
1004 B
TypeScript

/**
* @vitest-environment happy-dom
*/
import { DebugLogger } from '@affine/debug';
import { describe, expect, test, vi } from 'vitest';
describe('debug', () => {
test('disabled', () => {
const logger = new DebugLogger('test');
logger.enabled = false;
for (const level of ['debug', 'info', 'warn', 'error'] as const) {
const fn = vi.fn();
vi.spyOn(globalThis.console, level).mockImplementation(fn);
expect(logger.enabled).toBe(false);
expect(fn).not.toBeCalled();
logger[level]('test');
expect(fn, level).not.toBeCalled();
}
});
test('log', () => {
const logger = new DebugLogger('test');
logger.enabled = true;
for (const level of ['debug', 'info', 'warn', 'error'] as const) {
const fn = vi.fn();
vi.spyOn(globalThis.console, level).mockImplementation(fn);
expect(logger.enabled).toBe(true);
expect(fn).not.toBeCalled();
logger[level]('test');
expect(fn, level).toBeCalled();
}
});
});