PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Cách thích hợp để kiểm tra các phương thức chuỗi QueryBuilder của TypeORM là gì?

bạn có thể sử dụng jest.spyOn cho QueryBuilder giống như nguyên mẫu này:

import { QueryBuilder } from 'typeorm';

describe('Name of the group', () => {
    it('should do something', () => {
      const queryBuilder: any = {
        into: jest.fn().mockReturnThis(),
        values: jest.fn().mockReturnThis(),
        onConflict: jest.fn().mockReturnThis(),
        setParameter: jest.fn().mockReturnThis(),
        execute: jest.fn().mockRejectedValueOnce(new Error('db Error')),
        // execute: jest.fn().mockResolvedValueOnce({ res: 'mockRes' }),
      };
      jest
        .spyOn(QueryBuilder.prototype, 'insert')
        .mockReturnValueOnce(queryBuilder);
    });
});

sử dụng chức năng


export async function doQuery(input: any){
  const queryRunner = await Entity.createQueryRunner();
  await queryRunner.manager
  .createQueryBuilder()
  .insert()
  .into(Entity)
  .values(input)
  .onConflict(
    `("id") DO UPDATE SET "date" = :date`
  )
  .setParameter('date', date)
  .execute();
}




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách chạy Jasmine trước Tất cả cho tất cả các tệp thử nghiệm

  2. Giá trị tiếp theo của PostgreSQL của các chuỗi?

  3. Cách lưu đối tượng JSON vào PostgreSQL bằng cách sử dụng kiểu dữ liệu JSONB bên trong bảng và trình điều khiển PostgreSQL JDBC

  4. Lặp lại trên số nguyên [] trong PL / pgSQL

  5. Làm thế nào để thiết lập cơ sở dữ liệu Postgres cho dự án Rails cục bộ?