PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

टाइपओआरएम की क्वेरीबिल्डर चेनिंग विधियों का परीक्षण करने का एक उचित तरीका क्या होगा?

आप QueryBuilder . के लिए jest.spyOn का उपयोग कर सकते हैं इस तरह प्रोटोटाइप:

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

फ़ंक्शन का उपयोग


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. समान अंतराल वाले अंतराल पर एकाधिक औसत

  2. क्या CSV प्रारूप के साथ Postgres COPY कमांड में कोट प्रोसेसिंग को बंद करना संभव है?

  3. हेरोकू पर बैकअप/लोड के बाद PostgreSQL डेटाबेस का आकार कम है

  4. अपरिवर्तनीय, स्थिर और अस्थिर कीवर्ड फ़ंक्शन के व्यवहार को कैसे प्रभावित करते हैं?

  5. PostgreSQL में एक पंक्ति के बाइट आकार का पता लगाएं