Met sinon kun je een mock of stub rond een hele module plaatsen. Stel bijvoorbeeld dat de mysql module heeft een functie query :
var mock;
mock = sinon.mock(require('mysql'))
mock.expects('query').with(queryString, queryParams).yields(null, rows);
queryString , queryParams zijn de input die u verwacht. rows is de output die u verwacht.
Wanneer uw te testen klas nu mysql vereist en de query . aanroept methode, wordt deze onderschept en geverifieerd door sinon.
In uw testverwachtingsgedeelte zou u het volgende moeten hebben:
mock.verify()
en in je demontage moet je mysql terugzetten naar de normale functionaliteit:
mock.restore()