У меня есть метод, который зависит от new Date
, чтобы создать объект даты, а затем манипулировать им. Я тестирую, что манипуляции работают так, как ожидалось, поэтому мне нужно сравнить возвращаемую дату с ожидаемой датой. Для этого мне нужно убедиться, что new Date
возвращает то же значение в тесте и в тестируемом методе. Как я могу это сделать?
Есть ли способ на самом деле высмеять возвращаемое значение функции-конструктора?
Я мог бы создать модуль, который может потребоваться с помощью функции, которая предоставляет объект даты и может быть издевательством. Но это похоже на ненужную абстракцию в моем коде.
пример функции, подлежащей тестированию...
module.exports = {
sameTimeTomorrow: function(){
var dt = new Date();
dt.setDate(dt + 1);
return dt;
}
};
как мне высмеять возвращаемое значение new Date()
?