gpt4 book ai didi

javascript - 如何在 mocha/sinon 中测试条件表达式

转载 作者:行者123 更新时间:2023-11-30 19:29:56 24 4
gpt4 key购买 nike

我有这样的功能:

abc(prop) {
const x = aComplexFunction(this.productData, 'productStatus');
let result;

/* istanbul-ignore-next */
if (x) {
const key = (x[prop]) ? 'enabled' : 'notEnabled';

result = `wayOfLife.${key}`;
}

return result;
},

我的报道说“已启用”部分未涵盖。如何解决这个问题

最佳答案

要涵盖 'enabled' 案例,您只需要一个测试案例,其中 x[prop] 为真。

一个简单的方法是使用类似'toString' 的方法,因为toString 作为Object.prototype.toString 存在于每个对象上。函数和函数求值为真。

这里是一个稍微简化的工作示例来演示:

const expect = require('chai').expect;

const aComplexFunction = () => ({});

function abc(prop) {
const x = aComplexFunction();
let result;

if (x) {
const key = (x[prop]) ? 'enabled' : 'notEnabled';
result = `wayOfLife.${key}`;
}

return result;
};

it('will cover the enabled case', function() {
expect(abc('propThatDoesNotExist')).to.equal('wayOfLife.notEnabled'); // <= covers notEnabled
expect(abc('toString')).to.equal('wayOfLife.enabled'); // <= covers enabled
});

关于javascript - 如何在 mocha/sinon 中测试条件表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56521380/

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