Этот вопрос очень похож на тот, который здесь: https://github.com/sinonjs/sinon/issues/2138
Я буду использовать тот же пример:
it("test case 100", () => {
return getPromiseA().then((A1) => {
const mock1 = sinon.mock(MyObject);
mock1.expects("someMethod").twice();
A1.getPromiseB("1234").then((response) => {
mock1.restore();
mock1.verify();
}).catch((error) => {
console.log("+++--- (Error) END of testCase +++++");
}
}, (rejectedP) => {
}).catch((err) => {
console.log("-------- (REJ-C) END of testCase ++++");
});
});
Строка кода: mock1.expects("someMethod").twice();
долженошибка при вызове mock1.verify();
. При нормальных обстоятельствах mock1.verify();
сгенерирует исключение, и контрольный пример провалится.
Но в приведенном выше примере контрольный пример не завершится неудачей. В консоли браузера выдается сообщение об ошибке - вот и все.
Исправление для этого заключается в том, что контрольный пример ДОЛЖЕН завершиться неудачей. Есть идеи?