gpt4 book ai didi

javascript - Jasmine 条件 callThrough 和 callFake

转载 作者:行者123 更新时间:2023-12-03 17:43:54 24 4
gpt4 key购买 nike

我有一个返回函数引用的方法。

function methodetobeMoked(param){
case1:return func1;
case 2: return func2;
.
.
case n: return funcN;
}

我需要监视这个方法并为特定的输入参数 p 返回一个假函数引用

Jasmine 测试中是否有条件调用
我的情况是

SpyOn(some object,'someMethode').and.{if param=p callFake(fakeMethode) else callThrough()}

I tried callFake Is there any way to pass control to original method from fake method?

最佳答案

Jasmine spy 在名为 originalValue 的属性中保留原始功能。 ,因此您可以执行以下操作:

var mySpy = {};
mySpy = t.spyOn(obj, 'methodToBeMocked').and.callFake(function (param) {
if (param === 'fake case') {
// return fake result
} else {
// do this if using Jasmine
return (mySpy.and.callThrough())(param);
// do this if using Ext + Siesta and duped by common syntax :)
// return mySpy.originalValue(param);
}
});

关于javascript - Jasmine 条件 callThrough 和 callFake,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37944422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com