sql >> Database teknologi >  >> RDS >> Mysql

Hvordan håner du MySQL (uden en ORM) i Node.js?

Med sinon kan du sætte en mock eller stub rundt om et helt modul. Antag for eksempel mysql modul har en funktion query :

var mock;

mock = sinon.mock(require('mysql'))
mock.expects('query').with(queryString, queryParams).yields(null, rows);

queryString , queryParams er det input, du forventer. rows er det output, du forventer.

Når din klasse under test nu kræver mysql og kalder query metode, vil den blive opsnappet og verificeret af sinon.

I dit testforventningsafsnit skal du have:

mock.verify()

og i din deardown bør du gendanne mysql tilbage til normal funktionalitet:

mock.restore()


  1. Optimer forespørgsel med OFFSET på stort bord

  2. Eliminering af MySQL Split-Brain i Multi-Cloud-databaser

  3. group_concat-resultat virker ikke i IN-tilstand

  4. Hvordan bruger jeg CONCAT-funktionen i SQL Server 2008 R2?