Jest.js Nest无法解析测试用例nodejs中MyRepository的依赖关系

oo7oh9g9  于 2023-09-28  发布在  Jest
关注(0)|答案(1)|浏览(130)

这是我的仓库

@Injectable()
export class MyRepository extends Repository<MyData> {
  constructor(private dataSource: DataSource) {
    super(MyData, dataSource.createEntityManager());
  }
}

和spec文件

beforeEach(async () => {
    const module: TestingModule = await Test.createTestingModule({
      controllers: [MyController],
      providers: [
        MyService,
        MyRepository ,

      ],
    }).compile();

但我正在面对

Nest can't resolve dependencies of the MyRepository (?). Please make sure that the argument DataSource at index [0] is available in the RootTestModule context.

有人帮忙吗?

vx6bjr1n

vx6bjr1n1#

您需要为DataSource提供程序创建一个模拟。老实说,你应该模拟注入到你正在测试的类中的任何东西,而不是将其添加到测试模块进行单元测试。

{
  provide: DataSource,
  useValue: {
    createEntityManager: jest.fn(),
  }
}

相关问题