diff --git a/src/app.module.ts b/src/app.module.ts index 107f690..5b0d4e9 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -20,6 +20,8 @@ import {ConfigModule} from "@nestjs/config"; import {MessagingModule} from "./messaging/messaging.module"; import * as process from "process"; import {OpenaiModule} from "./openai/openai.module"; +import { FeatureflagController } from './featureflag/featureflag.controller'; +import { FeatureflagService } from './featureflag/featureflag.service'; @Module({ imports: [ @@ -41,8 +43,8 @@ import {OpenaiModule} from "./openai/openai.module"; GiftsModule, OpenaiModule ], - controllers: [AppController], - providers: [AppService, SocketGateway, SchedulerService], + controllers: [AppController, FeatureflagController], + providers: [AppService, SocketGateway, SchedulerService, FeatureflagService], exports: [AppService, SocketGateway], }) export class AppModule {} diff --git a/src/mocks/config-service.mock.ts b/src/mocks/config-service.mock.ts new file mode 100644 index 0000000..d8019f2 --- /dev/null +++ b/src/mocks/config-service.mock.ts @@ -0,0 +1,3 @@ +export const ConfigServiceMock = { + +} \ No newline at end of file diff --git a/src/mocks/featureflag-service.mock.ts b/src/mocks/featureflag-service.mock.ts new file mode 100644 index 0000000..f905e58 --- /dev/null +++ b/src/mocks/featureflag-service.mock.ts @@ -0,0 +1,4 @@ +export const FeatureflagServiceMock = { + getFeatureFlag: jest.fn(), + setFeatureFlag: jest.fn(), +} \ No newline at end of file diff --git a/src/mocks/shared-service.mock.ts b/src/mocks/shared-service.mock.ts index e1696ae..ab35373 100644 --- a/src/mocks/shared-service.mock.ts +++ b/src/mocks/shared-service.mock.ts @@ -1,3 +1,5 @@ export const SharedServiceMock = { + setConfig: jest.fn(), + getConfig: jest.fn(), sendSocketNotificationToAllClients: jest.fn(), } \ No newline at end of file diff --git a/src/mocks/voice-service.mock.ts b/src/mocks/voice-service.mock.ts new file mode 100644 index 0000000..63e0e21 --- /dev/null +++ b/src/mocks/voice-service.mock.ts @@ -0,0 +1,3 @@ +export const VoiceServiceMock = { + +} \ No newline at end of file diff --git a/src/scheduler/scheduler.service.ts b/src/scheduler/scheduler.service.ts index 6898424..62a7508 100644 --- a/src/scheduler/scheduler.service.ts +++ b/src/scheduler/scheduler.service.ts @@ -32,7 +32,6 @@ export class SchedulerService { const giftsLeft = await this.giftsService.getRemainingPrizeCount(); if (giftsLeft === 0) { const state = await this.stateService.setState('main', 'finish'); - console.log(this.state); this.sharedService.sendSocketNotificationToAllClients( 'state_changed', state, diff --git a/src/shared/shared.service.ts b/src/shared/shared.service.ts index 85955d6..6ba9c3b 100644 --- a/src/shared/shared.service.ts +++ b/src/shared/shared.service.ts @@ -16,11 +16,15 @@ export class SharedService { } async getConfig(key: string) { - return this.configModel + const res = await this.configModel .findOne({ key, }) .exec(); + return { + key: res.key, + value: res.value, + } } async setConfig(key: string, value: string) { @@ -35,11 +39,17 @@ export class SharedService { value, }); await record.save(); - return record; + return { + key: record.key, + value: record.value, + } } cfgItem.value = value; await cfgItem.save(); - return cfgItem; + return { + key: cfgItem.key, + value: cfgItem.value, + } } sendSocketNotificationToAllClients(event: string, payload?: any) { diff --git a/src/voice/voice.controller.spec.ts b/src/voice/voice.controller.spec.ts index 948bc66..735777b 100644 --- a/src/voice/voice.controller.spec.ts +++ b/src/voice/voice.controller.spec.ts @@ -1,15 +1,31 @@ import { Test, TestingModule } from '@nestjs/testing'; import { VoiceController } from './voice.controller'; +import {VoiceService} from "./voice.service"; +import {VoiceServiceMock} from "../mocks/voice-service.mock"; +import {Config} from "../schemas/config.schema"; +import {ConfigService} from "@nestjs/config"; +import {ConfigServiceMock} from "../mocks/config-service.mock"; describe('VoiceController', () => { let controller: VoiceController; + let voiceService: VoiceService; + let configService: ConfigService; beforeEach(async () => { + jest.clearAllMocks(); const module: TestingModule = await Test.createTestingModule({ - controllers: [VoiceController], + controllers: [ + VoiceController, + ], + providers: [ + { provide: VoiceService, useValue: VoiceServiceMock }, + { provide: ConfigService, useValue: ConfigServiceMock }, + ] }).compile(); controller = module.get(VoiceController); + voiceService = module.get(VoiceService); + configService = module.get(ConfigService); }); it('should be defined', () => {