我试图遍历一个元素列表,并想Assert主体包括两个值中的任何一个。我试图使用以下方法,但它只允许我Assert一个值。
expect(cellText).includes(toDateFormat);
字符串我如何做一个Assert,允许我Assert多个具有OR条件的值?
cuxqih211#
你可以用柴的满足来完成这件事。将目标作为第一个参数传递给给定的匹配器函数,并Assert返回的值是true。
expect(cellText).to.satisfy(function(text) { return text.includes(toDateFormat) || text.includes(otherFormatVariable);})
expect(cellText).to.satisfy(function(text) {
return text.includes(toDateFormat) || text.includes(otherFormatVariable);
})
字符串如果你有一个很长的潜在期望值列表,你可以通过将这些值放在一个数组中来简化,然后使用array.filter()在期望的文本值中查找实际文本值的示例,并返回过滤后的数组的长度。
array.filter()
const expected = ['foo', 'bar', 'baz']expect(cellText).to.satisfy(function(text) { return expected.filter((x) => cellText.includes(x)).length});
const expected = ['foo', 'bar', 'baz']
return expected.filter((x) => cellText.includes(x)).length
});
型
1条答案
按热度按时间cuxqih211#
你可以用柴的满足来完成这件事。
将目标作为第一个参数传递给给定的匹配器函数,并Assert返回的值是true。
字符串
如果你有一个很长的潜在期望值列表,你可以通过将这些值放在一个数组中来简化,然后使用
array.filter()
在期望的文本值中查找实际文本值的示例,并返回过滤后的数组的长度。型