تايبسكريبت - Nestjs: لا يمكن حقن ConfigService أثناء الاختبار
أواجه مشاكل في إعداد اختبار وحدة يستخدم ConfigService لإعداد TypeORM. الاختبار أدناه يفشل بالرسالة التالية:
لا يمكن لـ Nest حل تبعيات TypeOrmModuleOptions (؟). يرجى التأكد من أن الوسيط ConfigService عند الفهرس [0] متاح في سياق TypeOrmCoreModule.
لقد حاولت إضافة ConfigService كمزوّد، لكن بدون جدوى. هل لديك أي أفكار عما أفعله بشكل خاطئ؟
import { ConfigModule, ConfigService } from '@nestjs/config';
import { Test } from '@nestjs/testing';
import { TypeOrmModule, TypeOrmModuleOptions } from '@nestjs/typeorm';
describe('TypeORM setup', () => {
beforeEach(async () => {
await Test.createTestingModule({
providers: [ConfigService],
imports: [
ConfigModule.forRoot(),
TypeOrmModule.forRootAsync({
useFactory: (config: ConfigService) => ({ ...config.get('db') }),
inject: [ConfigService],
}),
],
}).compile();
});
it('dummy', () => {
true === true;
});
});
الإجابة رقم 1
إما أنك بحاجة إلى تعيين { isGlobal: true } كخيار لـ ConfigModule أو تحتاج إلى إضافة imports: [ConfigModule] إلى تكوين TypeOrmModule.forRootAsync()