小编nil*_*shi的帖子

NestJs 对 typeorm 分页进行单元测试时出现错误 queryBuilder.take(...).skip 不是函数

我正在尝试模拟 createQueryBuilder 对分页部分进行单元测试,但出现以下错误

queryBuilder.take(...).skip 不是函数

我的 createQueryBuilder 模拟

    createQueryBuilder: jest.fn(() => ({
      delete: jest.fn().mockReturnThis(),
      innerJoinAndSelect: jest.fn().mockReturnThis(),
      innerJoin: jest.fn().mockReturnThis(),
      from: jest.fn().mockReturnThis(),
      where: jest.fn().mockReturnThis(),
      execute: jest.fn().mockReturnThis(),
      getOne: jest.fn().mockReturnThis(),
      orderBy : jest.fn().mockReturnThis(),
      take : skip => ({
       skip: 5
      }), 
  }))
Run Code Online (Sandbox Code Playgroud)

查找全部的单元测试

it("Find All", async () => {
    const pageData: PaginationDto = {
      page: 1,
      limit: 10,
      sortBy: "id",
      sortOrder: -1,
      relatinalData: relatinalData.no

    };
    expect(await service.getGroups(pageData)).toEqual({
      docs: [{
        groupName: "group123",
        description: "Group Description",
        roleId: 1
      },
      {
        groupName: "group123",
        description: "Group Description",
        roleId: …
Run Code Online (Sandbox Code Playgroud)

unit-testing jestjs typeorm nestjs

4
推荐指数
1
解决办法
4876
查看次数

NestJs 电子邮件发送带有 ejs 模板动态数据的失败

我正在尝试使用 @nestjs-modules/mailer nodemailer 在 Nestjs 框架中发送电子邮件。电子邮件与普通文本一起工作正常,但是当设置为使用 EJS 模板作为电子邮件正文时,它停止工作。我使用 [ https://nest-modules.github.io/mailer/docs/mailer.html][1]作为参考,下面是我的源代码。应用模块.ts

import { Module } from '@nestjs/common';
import { MailerModule } from '@nestjs-modules/mailer';
import { EjsAdapter } from '@nestjs-modules/mailer/dist/adapters/ejs.adapter';
import { join } from 'path';
const path = join(__dirname, '../../../apps/api/src/app/template');

@Module({
  imports: [MailerModule.forRoot({
    transport: environment.SmtpDetails,
    defaults: {
      from: environment.SmtpEmail,
    },
    template: {
      dir: path,
      adapter: new EjsAdapter(),
      options: {
        strict: true,
      },
    },
  })
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)

电子邮件服务

import { Injectable, BadGatewayException } from '@nestjs/common';
import { …
Run Code Online (Sandbox Code Playgroud)

ejs nodemailer nestjs

4
推荐指数
2
解决办法
2354
查看次数

标签 统计

nestjs ×2

ejs ×1

jestjs ×1

nodemailer ×1

typeorm ×1

unit-testing ×1