Dzięki sinonowi możesz umieścić próbkę lub skrót wokół całego modułu. Załóżmy na przykład, że mysql moduł posiada funkcję query :
var mock;
mock = sinon.mock(require('mysql'))
mock.expects('query').with(queryString, queryParams).yields(null, rows);
queryString , queryParams są danymi wejściowymi, których oczekujesz. rows to oczekiwany wynik.
Gdy testowana klasa wymaga teraz mysql i wywołuje query metody, zostanie przechwycony i zweryfikowany przez sinon.
W sekcji oczekiwań związanych z testem powinieneś mieć:
mock.verify()
i w swoim rozrzuceniu powinieneś przywrócić mysql z powrotem do normalnej funkcjonalności:
mock.restore()