Със sinon можете да поставите макет или заглушка около цял модул. Например, да предположим, че mysql модулът има функция query :
var mock;
mock = sinon.mock(require('mysql'))
mock.expects('query').with(queryString, queryParams).yields(null, rows);
queryString , queryParams са входът, който очаквате. rows е резултатът, който очаквате.
Когато вашият тестов клас сега изисква mysql и извиква query метод, той ще бъде прихванат и проверен от sinon.
В раздела за очаквания от теста трябва да имате:
mock.verify()
и при разрушаването трябва да възстановите mysql обратно към нормалната функционалност:
mock.restore()