gpt4 book ai didi

javascript - 如何在 Chai 中模拟或 stub 'instanceof' |诗农 |摩卡

转载 作者:行者123 更新时间:2023-12-01 00:40:08 26 4
gpt4 key购买 nike

我有一个需要模拟或 stub 数据的情况。

    var array =['add','divide']
var add =listMehtod[0];
if(add instanceof Calculator){ // how to test this ?
// some logic
}

基本上我必须为内部逻辑编写一些测试用例,但问题是第一个 if 语句我无法通过。有什么方法可以通过 chai 或 sinon 来处理它吗?

测试用例:

  var a = new Calculator();
expect(a).to.be.instanceOf(Calculator) // this is returning false

最佳答案

您可以使用Object.create()创建具有给定原型(prototype)的空白(-ish)对象,该原型(prototype)将通过 instanceof 检查:

class Calculator {
constructor() { this._calculator = 'CALCULATOR' }
calculate(a, b) { return a + b }
}
const calc = Object.create(Calculator.prototype)
console.log(calc instanceof Calculator) // => true

请注意,该对象仍将从其原型(prototype)继承属性,即上面的 calculate() 方法。

关于javascript - 如何在 Chai 中模拟或 stub 'instanceof' |诗农 |摩卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57775086/

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