mirror of
https://github.com/immich-app/immich.git
synced 2026-03-07 02:27:23 +03:00
refactor: logging repository (#15540)
This commit is contained in:
40
server/src/repositories/logging.repository.spec.ts
Normal file
40
server/src/repositories/logging.repository.spec.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
import { ClsService } from 'nestjs-cls';
|
||||
import { ImmichWorker } from 'src/enum';
|
||||
import { LoggingRepository } from 'src/repositories/logging.repository';
|
||||
import { IConfigRepository } from 'src/types';
|
||||
import { mockEnvData, newConfigRepositoryMock } from 'test/repositories/config.repository.mock';
|
||||
import { Mocked } from 'vitest';
|
||||
|
||||
describe(LoggingRepository.name, () => {
|
||||
let sut: LoggingRepository;
|
||||
|
||||
let configMock: Mocked<IConfigRepository>;
|
||||
let clsMock: Mocked<ClsService>;
|
||||
|
||||
beforeEach(() => {
|
||||
configMock = newConfigRepositoryMock();
|
||||
clsMock = {
|
||||
getId: vitest.fn(),
|
||||
} as unknown as Mocked<ClsService>;
|
||||
});
|
||||
|
||||
describe('formatContext', () => {
|
||||
it('should use colors', () => {
|
||||
configMock.getEnv.mockReturnValue(mockEnvData({ noColor: false }));
|
||||
|
||||
sut = new LoggingRepository(clsMock, configMock);
|
||||
sut.setAppName(ImmichWorker.API);
|
||||
|
||||
expect(sut['formatContext']('context')).toBe('\u001B[33m[Api:context]\u001B[39m ');
|
||||
});
|
||||
|
||||
it('should not use colors when noColor is true', () => {
|
||||
configMock.getEnv.mockReturnValue(mockEnvData({ noColor: true }));
|
||||
|
||||
sut = new LoggingRepository(clsMock, configMock);
|
||||
sut.setAppName(ImmichWorker.API);
|
||||
|
||||
expect(sut['formatContext']('context')).toBe('[Api:context] ');
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user