我有一个对象列表,我想对对象本身做出真理风格的断言,但我没有看到任何合理的方式来表达比相等断言更复杂的东西。我正在设想类似的东西:
assertThat(list).containsElementThat().matches("Foo .* Bar");
假设这在 Truth 中不可用,那么表达这种东西的最真实的方式是什么?如果我知道我在寻找列表中的哪个位置,我可以说:
assertThat(list).hasSize(Math.max(list.size(), i));
assertThat(list.get(i)).matches("Foo .* Bar");
但是(除了有点hacky之外)只有在我i
事先知道的情况下才有效,并且不适用于任意迭代。有没有比自己做这个更好的解决方案?