PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Apa cara yang tepat untuk menguji metode rantai QueryBuilder TypeORM?

anda dapat menggunakan jest.spyOn untuk QueryBuilder prototipe seperti ini:

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);
    });
});

penggunaan fungsi


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. Bagaimana saya bisa menulis kueri SQL untuk menghitung jumlah komponen yang dijual dengan rakitan induknya? (Postgres 11/CTE rekursif?)

  2. Apa cara yang paling direkomendasikan untuk menyimpan waktu di PostgreSQL menggunakan Java?

  3. Bagaimana Fungsi Timezone() Bekerja di PostgreSQL

  4. Hibernasi:Buat Indeks

  5. file batch untuk menyimpan output kueri psql ke dalam variabel