Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment vous moquez-vous de MySQL (sans ORM) dans Node.js ?

Avec sinon, vous pouvez mettre un mock ou un stub autour d'un module entier. Par exemple, supposons que le mysql le module a une fonction query :

var mock;

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

queryString , queryParams sont l'entrée que vous attendez. rows est la sortie que vous attendez.

Lorsque votre classe sous test nécessite maintenant mysql et appelle la query méthode, il sera intercepté et vérifié par sinon.

Dans votre section d'attente de test, vous devriez avoir :

mock.verify()

et dans votre démontage, vous devez restaurer mysql pour qu'il fonctionne normalement :

mock.restore()