在玩笑模拟中使用原始函数会导致无限循环

我有一个来自dynamoose的可链接方法,在测试中,我想向该链添加一个附加方法。

基本上,在测试中,我想替换所有的

实例
Model.query(key).otherChainableMethods()

使用

Model.query(key).limit(LIMIT).otherChainableMethods()

所以我尝试了:

Model.query = jest.fn(key => Model.query(key).limit(LIMIT))

但这显然导致某种无限循环,因为我得到了RangeError: Maximum call stack size exceeded

如何在模拟实现中使用函数的原始实现?

llf8282 回答:在玩笑模拟中使用原始函数会导致无限循环

我找到了一个简单的解决方案。我可以先简单地将原始方法存储在另一个变量中。

const originalQuery = Profile.query
Profile.query = jest.fn(key => originalQuery(key).limit(LIMIT))
本文链接:https://www.f2er.com/3157920.html

大家都在问