当我试图熟悉飞镖单元测试时,我遇到了以下问题,
我有一个nums列表,我想与预期的nums列表进行比较。这些值可能是“双倍”,因此需要与closeTo进行比较。
是否有可能以某种方式组合这两个匹配器,或者我需要自己编写或者是否有我跳过的匹配器?
答案 0 :(得分:1)
我不知道一个特定的匹配器,它结合了两个匹配器的功能来比较两个独立的迭代。但是,您可以轻松编写测试以迭代这两个集合,并检查该值是否为closeTo expect。请记住,每次测试可以有多个expect()
语句。
所以你的测试看起来像这样:
test('List is close', () {
var expectedList = [1, 3, 56, 892, 919];
List<num> myVals = someFunction();
var len = expectedList.length;
for(var i = 0; i < len; i++) {
expect(myVals[i], closeTo(expectedList[i], 0.005));
}
});