gpt4 book ai didi

javascript - 如何使用新的断言函数扩展 QUnit?

转载 作者:数据小太阳 更新时间:2023-10-29 04:40:42 25 4
gpt4 key购买 nike

我想向 QUnit 添加新断言。我做了这样的事情:

QUnit.extend(QUnit.assert, {
increases: function(measure, block, message){
var before = measure();
block();
var after = measure();
var passes = before < after;
QUnit.push(passes, after, "< " + before, message);
}
});

当我在测试中使用 increases(foo,bar,baz) 时,我得到了

ReferenceError: increases is not defined

从浏览器控制台我可以看到 increases 与所有其他标准函数一起在 QUnit.assert 中找到:ok, 等于deepEqual

从控制台运行:
test("foo", function(){console.log(ok) });
我看到了 ok 的来源。

运行:
test("foo", function(){console.log(increases) });
我被告知 increases 没有定义。

在测试中使用我的增加需要什么魔法?另外,它的文档在哪里(如果有的话)?

谢谢

最佳答案

我发现解决方案是在测试回调函数中接受一个参数。该参数将具有额外的断言类型。所以我们可以这样调用它:

//the assert parameter accepted by the callback will contain the 'increases' assertion
test("adding 1 increases a number", function(assert){
var number = 42;
function measure(){return number;}
function block(){number += 1;}
assert.increases(measure, block);
});

关于javascript - 如何使用新的断言函数扩展 QUnit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19471956/

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