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()