仅在Javascript中模拟构造函数(使用spyOn)

时间:2014-11-13 17:39:59

标签: javascript unit-testing mocking jasmine spy

我正在做这样的问题here,它允许我在我的测试中提供我自己的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)。有什么想法吗?

0 个答案:

没有答案
相关问题