gpt4 book ai didi

javascript - 如何在 JavaScript 中使用 Mocha 和 assert.throws 测试参数的值?

转载 作者:行者123 更新时间:2023-12-02 14:44:27 26 4
gpt4 key购买 nike

我想看看等于“x”的值是否会导致我的函数抛出异常。我有一个单元测试来检查一个 block 是否会抛出异常,但我希望仅当参数 = 'x' 时才抛出异常,而不是在其为空时抛出异常。如何使用断言来做到这一点?

这里有一些代码来说明我的意思:

// Some function to check if a color is not transparent.
function checkColor(color) {
if (color == 'transparent') {
throw new TypeError('cant have transparent colors!');
} else {
return color;
}
}

这是断言:

assert.throws(checkColor, /cant have transparent colors!/);

现在,我知道断言将会失败,因为如果颜色 == '透明',我的函数只会抛出异常。使用 Mocha 和 Assert,如何根据需要测试断言?我不想仅仅测试 color !== undefined 或是否属于某种类型。我特别想看看在上述特定情况下是否引发异常 - 这是我希望引发异常的唯一情况(因为有空颜色,实际上是在其他地方处理的)。

最佳答案

assert.throw(function() { iThrowError(argument) }, Error)

现在只需确保 argument = x;

关于javascript - 如何在 JavaScript 中使用 Mocha 和 assert.throws 测试参数的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36727401/

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