Con sinon, puoi inserire un mock o uno stub attorno a un intero modulo. Ad esempio, supponiamo il mysql
il modulo ha una funzione query
:
var mock;
mock = sinon.mock(require('mysql'))
mock.expects('query').with(queryString, queryParams).yields(null, rows);
queryString
, queryParams
sono l'input che ti aspetti. rows
è l'output che ti aspetti.
Quando la tua classe in test ora richiede mysql e chiama la query
metodo, sarà intercettato e verificato da sinon.
Nella sezione delle aspettative del test dovresti avere:
mock.verify()
e nel tuo smontaggio dovresti ripristinare mysql alla normale funzionalità:
mock.restore()