mirror of
https://github.com/immich-app/immich
synced 2025-11-14 17:36:12 +00:00
refactor: logger (#16393)
This commit is contained in:
parent
1c86293035
commit
fbd85a89e0
10 changed files with 153 additions and 86 deletions
|
|
@ -3,15 +3,12 @@ import { writeFile } from 'node:fs/promises';
|
|||
import { tmpdir } from 'node:os';
|
||||
import { join } from 'node:path';
|
||||
import { AssetEntity } from 'src/entities/asset.entity';
|
||||
import { LoggingRepository } from 'src/repositories/logging.repository';
|
||||
import { MetadataRepository } from 'src/repositories/metadata.repository';
|
||||
import { MetadataService } from 'src/services/metadata.service';
|
||||
import { ILoggingRepository, newLoggingRepositoryMock } from 'test/repositories/logger.repository.mock';
|
||||
import { newFakeLoggingRepository } from 'test/repositories/logger.repository.mock';
|
||||
import { newRandomImage, newTestService, ServiceMocks } from 'test/utils';
|
||||
|
||||
const metadataRepository = new MetadataRepository(
|
||||
newLoggingRepositoryMock() as ILoggingRepository as LoggingRepository,
|
||||
);
|
||||
const metadataRepository = new MetadataRepository(newFakeLoggingRepository());
|
||||
|
||||
const createTestFile = async (exifData: Record<string, any>) => {
|
||||
const data = newRandomImage();
|
||||
|
|
|
|||
|
|
@ -1,31 +1,23 @@
|
|||
import { LoggingRepository } from 'src/repositories/logging.repository';
|
||||
import { RepositoryInterface } from 'src/types';
|
||||
import { Mocked, vitest } from 'vitest';
|
||||
|
||||
export type ILoggingRepository = Pick<
|
||||
LoggingRepository,
|
||||
| 'verbose'
|
||||
| 'log'
|
||||
| 'debug'
|
||||
| 'warn'
|
||||
| 'error'
|
||||
| 'fatal'
|
||||
| 'isLevelEnabled'
|
||||
| 'setLogLevel'
|
||||
| 'setContext'
|
||||
| 'setAppName'
|
||||
>;
|
||||
|
||||
export const newLoggingRepositoryMock = (): Mocked<ILoggingRepository> => {
|
||||
export const newLoggingRepositoryMock = (): Mocked<RepositoryInterface<LoggingRepository>> => {
|
||||
return {
|
||||
setLogLevel: vitest.fn(),
|
||||
setContext: vitest.fn(),
|
||||
setAppName: vitest.fn(),
|
||||
isLevelEnabled: vitest.fn(),
|
||||
verbose: vitest.fn(),
|
||||
verboseFn: vitest.fn(),
|
||||
debug: vitest.fn(),
|
||||
debugFn: vitest.fn(),
|
||||
log: vitest.fn(),
|
||||
warn: vitest.fn(),
|
||||
error: vitest.fn(),
|
||||
fatal: vitest.fn(),
|
||||
};
|
||||
};
|
||||
|
||||
export const newFakeLoggingRepository = () =>
|
||||
newLoggingRepositoryMock() as RepositoryInterface<LoggingRepository> as LoggingRepository;
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ import { newDatabaseRepositoryMock } from 'test/repositories/database.repository
|
|||
import { newEventRepositoryMock } from 'test/repositories/event.repository.mock';
|
||||
import { newJobRepositoryMock } from 'test/repositories/job.repository.mock';
|
||||
import { newLibraryRepositoryMock } from 'test/repositories/library.repository.mock';
|
||||
import { ILoggingRepository, newLoggingRepositoryMock } from 'test/repositories/logger.repository.mock';
|
||||
import { newLoggingRepositoryMock } from 'test/repositories/logger.repository.mock';
|
||||
import { newMachineLearningRepositoryMock } from 'test/repositories/machine-learning.repository.mock';
|
||||
import { newMapRepositoryMock } from 'test/repositories/map.repository.mock';
|
||||
import { newMediaRepositoryMock } from 'test/repositories/media.repository.mock';
|
||||
|
|
@ -120,7 +120,7 @@ export type ServiceMocks = {
|
|||
event: Mocked<RepositoryInterface<EventRepository>>;
|
||||
job: Mocked<RepositoryInterface<JobRepository>>;
|
||||
library: Mocked<RepositoryInterface<LibraryRepository>>;
|
||||
logger: Mocked<ILoggingRepository>;
|
||||
logger: Mocked<RepositoryInterface<LoggingRepository>>;
|
||||
machineLearning: Mocked<RepositoryInterface<MachineLearningRepository>>;
|
||||
map: Mocked<RepositoryInterface<MapRepository>>;
|
||||
media: Mocked<RepositoryInterface<MediaRepository>>;
|
||||
|
|
@ -197,7 +197,7 @@ export const newTestService = <T extends BaseService>(
|
|||
const viewMock = newViewRepositoryMock();
|
||||
|
||||
const sut = new Service(
|
||||
loggerMock as ILoggingRepository as LoggingRepository,
|
||||
loggerMock as RepositoryInterface<LoggingRepository> as LoggingRepository,
|
||||
accessMock as IAccessRepository as AccessRepository,
|
||||
activityMock as RepositoryInterface<ActivityRepository> as ActivityRepository,
|
||||
auditMock as RepositoryInterface<AuditRepository> as AuditRepository,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue