feat: add unit tests global provider config

This commit is contained in:
yassinedorbozgithub
2025-03-23 08:52:19 +01:00
parent e0a77302cc
commit ac770154f5
73 changed files with 809 additions and 909 deletions

View File

@@ -11,9 +11,7 @@ import fs from 'fs';
import { CACHE_MANAGER } from '@nestjs/cache-manager';
import { BadRequestException } from '@nestjs/common/exceptions';
import { NotFoundException } from '@nestjs/common/exceptions/not-found.exception';
import { EventEmitter2 } from '@nestjs/event-emitter';
import { MongooseModule } from '@nestjs/mongoose';
import { Test, TestingModule } from '@nestjs/testing';
import { Request } from 'express';
import LocalStorageHelper from '@/extensions/helpers/local-storage/index.helper';
@@ -40,6 +38,7 @@ import {
closeInMongodConnection,
rootMongooseTestModule,
} from '@/utils/test/test';
import { buildTestingMocks } from '@/utils/test/utils';
import { attachment, attachmentFile } from '../mocks/attachment.mock';
import { AttachmentRepository } from '../repositories/attachment.repository';
@@ -59,10 +58,9 @@ describe('AttachmentController', () => {
let attachmentToDelete: Attachment;
let helperService: HelperService;
let settingService: SettingService;
let loggerService: LoggerService;
beforeAll(async () => {
const module: TestingModule = await Test.createTestingModule({
const { getMocks, resolveMocks } = await buildTestingMocks({
controllers: [AttachmentController],
imports: [
rootMongooseTestModule(async () => {
@@ -84,8 +82,6 @@ describe('AttachmentController', () => {
SettingRepository,
ModelService,
ModelRepository,
LoggerService,
EventEmitter2,
SettingSeeder,
SettingService,
HelperService,
@@ -98,18 +94,20 @@ describe('AttachmentController', () => {
},
},
],
}).compile();
attachmentController =
module.get<AttachmentController>(AttachmentController);
attachmentService = module.get<AttachmentService>(AttachmentService);
});
[attachmentController, attachmentService, helperService, settingService] =
await getMocks([
AttachmentController,
AttachmentService,
HelperService,
SettingService,
]);
const [loggerService] = await resolveMocks([LoggerService]);
attachmentToDelete = (await attachmentService.findOne({
name: 'store1.jpg',
}))!;
helperService = module.get<HelperService>(HelperService);
settingService = module.get<SettingService>(SettingService);
loggerService = await module.resolve<LoggerService>(LoggerService);
helperService.register(
new LocalStorageHelper(settingService, helperService, loggerService),
);

View File

@@ -7,13 +7,13 @@
*/
import { BadRequestException, ExecutionContext } from '@nestjs/common';
import { Test, TestingModule } from '@nestjs/testing';
import { Model } from '@/user/schemas/model.schema';
import { Permission } from '@/user/schemas/permission.schema';
import { ModelService } from '@/user/services/model.service';
import { PermissionService } from '@/user/services/permission.service';
import { Action } from '@/user/types/action.type';
import { buildTestingMocks } from '@/utils/test/utils';
import { attachment } from '../mocks/attachment.mock';
import { Attachment } from '../schemas/attachment.schema';
@@ -29,7 +29,7 @@ describe('AttachmentGuard', () => {
let attachmentService: AttachmentService;
beforeEach(async () => {
const module: TestingModule = await Test.createTestingModule({
const { getMocks } = await buildTestingMocks({
providers: [
AttachmentGuard,
{
@@ -45,12 +45,15 @@ describe('AttachmentGuard', () => {
useValue: { findOne: jest.fn() },
},
],
}).compile();
});
guard = module.get<AttachmentGuard>(AttachmentGuard);
permissionService = module.get<PermissionService>(PermissionService);
modelService = module.get<ModelService>(ModelService);
attachmentService = module.get<AttachmentService>(AttachmentService);
[guard, permissionService, modelService, attachmentService] =
await getMocks([
AttachmentGuard,
PermissionService,
ModelService,
AttachmentService,
]);
});
describe('canActivate', () => {