Этот тест должен соответствовать вашим потребностям:
@Test
public void test() {
List<Integer> integers = Collections.singletonList(1);
assertThat(integers)
.has(Assertions.anyOf(
new Condition<>(List::isEmpty, "List is empty"),
new Condition<>(list -> list.size() == 1 && list.contains(1), "List contains only number 1")
));
}
РЕДАКТИРОВАТЬ: Вы также можете allOf
вместо второго условия:
AllOf.allOf(
new Condition<>(list -> list.size() == 1, "List has size 1"),
new Condition<>(list -> list.contains(1), "List contains number 1")
)
РЕДАКТИРОВАТЬ 2: Или сравнить егос нужным списком:
new Condition<>(list -> Collections.singletonList(1).equals(list), "the list is equal to a list of the number 1")