Как добиться следующего:
List<Data> streams = new ArrayList<>();
assertThat(streams).usingFieldByFieldElementComparatorIgnoringGivenFields("createdOn").containsOnly(data1, data2);
Как добиться следующего:
List<Data> streams = new ArrayList<>();
assertThat(streams).usingFieldByFieldElementComparatorIgnoringGivenFields("createdOn").containsOnly(data1, data2);
Используйте ListAssert.usingElementComparatorIgnoringFields(String... fields)
, который делает то же самое, что и ListAssert.usingFieldByFieldElementComparator()
, но позволяя игнорировать некоторые поля/свойства:
Использовать поле/свойство путем сравнения полей/свойств для всех полей/свойств, кроме указанных.
Итак, вы могли бы написать:
List<Data> streams = new ArrayList<>();
//...
Assertions.assertThat(streams)
.usingElementComparatorIgnoringFields("createdOn")
.containsOnly(data1, data2);
Assert.assertTrue(date.after(lowerLimitDate) && date.before(upperLimitDate));
- person davidxxx; 29.03.2018
usingElementComparatorOnFields("foo", "bar")
было весьма полезным.
- person Philippe; 12.12.2019