Утвердить элементы списка без заказа - PullRequest
0 голосов
/ 04 марта 2019

Кажется очень глупым, но я не могу найти хорошее решение этой (я думаю, очень простой) проблемы: у меня есть список с элементами, которые не могут быть проверены equals.Вместо этого я хочу утверждать состояние элементов по их свойствам, и я хочу сделать это, игнорируя порядок элементов.

assertThat(list.get(xx)) не подходит, поскольку предполагает знание точного порядка.assertThat(list).containsInAnyOrder(xx, yyy, ...) не подходит, поскольку предполагает возможность сравнения объектов по equals().Я скучаю по чему-то вроде assertThat(list).containsInAnyOrder( Consumer<ObjectAssert<T>>...itemAssertions ).В качестве бонуса, в моем случае у меня уже есть пользовательское Утверждение для моего типа объекта T, но я предполагаю, что для этого потребуется действительно гибкий API, чтобы использовать его для элементов списка.

Что мне не хватает?

1 Ответ

0 голосов
/ 04 марта 2019

Вы можете попробовать usingRecursiveFieldByFieldElementComparator в цепочке с утверждением containsExactlyInAnyOrder.

...