Con sinon, puede poner un simulacro o un stub alrededor de un módulo completo. Por ejemplo, suponga que mysql
módulo tiene una función query
:
var mock;
mock = sinon.mock(require('mysql'))
mock.expects('query').with(queryString, queryParams).yields(null, rows);
queryString
, queryParams
son la entrada que espera. rows
es el resultado que espera.
Cuando su clase bajo prueba ahora requiere mysql y llama a query
método, será interceptado y verificado por sinon.
En la sección de expectativas de su examen, debe tener:
mock.verify()
y en su desmontaje debe restaurar mysql a la funcionalidad normal:
mock.restore()