ここでこの質問のようなことをしています。これによりDate
、テストでコンストラクターの独自の実装を提供できます
spyOn(window, 'Date').andCallFake(function() {
return SOME_DATE;
});
moment.js をアップグレードしたいという問題に遭遇しました。モックされた Date オブジェクトで呼び出しているコードで追加の Date 関数を使用しています。これらの関数は存在しません:
Date.UTC() // doesn't exist in mocked date when accessed in moment.js
だから私がする必要があるのは、何らかの方法でコンストラクター関数のみをモックDate
し、それ以外の関数を通過させることだと思います。
.andCallThrough
スパイオブジェクトに必要な機能を割り当てるだけでなく、さまざまな形式を試しました(例: spy.UTC = OldDate.UTC
)。何か案は?