Насколько я понимаю, заглушка - это шпион, который вынужден предпринимать какие-либо действия, такие как выбор стороны (например, бросок).Могу ли я / или имеет ли смысл подделывать возвращаемый диапазон чисел?Я пытаюсь проверить «Loan.prototype.cost», который вызывает «Loan.prototype.payment», затем выполняет некоторые вычисления.
В закомментированной части моего фрагмента я попытался создать диапазонof number («const rdnPaymentReturn» от 85,61 до 85,63), и имитируют свойство «payment» в этом диапазоне (const paymentSpy).Но я получаю сообщение об ошибке «AssertionError: ожидаемое значение NaN будет в пределах 27.32..27.56»
Если я могу / или имеет смысл установить для «paymentSpy» диапазон значений (85.61-85.63), какразрешить эту ошибку AssertionError?
Ссылка:
beforeEach(function() {
l = new Loan();
});
describe('#cost()', function() {
it('should call #payment() and return the correct cost amount', function() {
l.principal = 1000;
l.term = 1;
l.rate = 0.05;
sinon.stub(l, 'payment').callsFake(() =>{ return 85.61; });
expect(l.cost()).to.equal(27.32);
// const rdnPaymentReturn = () =>{
// return Math.random() * (85.63 - 85.61) + 85.61;
// }
//const paymentSpy = sinon.stub(l, 'payment').callsFake(() =>{ return rdnPaymentReturn; });
//expect(l.cost()).to.be.within(27.32, 27.56);
});
});