javascript ChaiAssert包含或用于字符串

lqfhib0f  于 2024-01-05  发布在  Java
关注(0)|答案(1)|浏览(98)

我试图遍历一个元素列表,并想Assert主体包括两个值中的任何一个。我试图使用以下方法,但它只允许我Assert一个值。

  1. expect(cellText).includes(toDateFormat);

字符串
我如何做一个Assert,允许我Assert多个具有OR条件的值?

cuxqih21

cuxqih211#

你可以用柴的满足来完成这件事。
将目标作为第一个参数传递给给定的匹配器函数,并Assert返回的值是true。

  1. expect(cellText).to.satisfy(function(text) {
  2. return text.includes(toDateFormat) || text.includes(otherFormatVariable);
  3. })

字符串
如果你有一个很长的潜在期望值列表,你可以通过将这些值放在一个数组中来简化,然后使用array.filter()在期望的文本值中查找实际文本值的示例,并返回过滤后的数组的长度。

  1. const expected = ['foo', 'bar', 'baz']
  2. expect(cellText).to.satisfy(function(text) {
  3. return expected.filter((x) => cellText.includes(x)).length
  4. });

相关问题