Я знаю, что этот вопрос задавался раньше.Однако ни одно из решений не работает для меня.У меня есть пользовательский класс, который состоит из 3 классов.Это выглядит так:
Class compositeClass
{
UserDefinedClass1 useClass1;
UserDefinedClass2 useClass2;
UserDefinedClass3 useClass3;
}
У меня есть метод тестирования, мне нужно сравнить списки этих составных классов.Я пробовал несколько вариантов равенства Assert, таких как: Hamcrest:
Assert.assertThat(mockCompositeList().getStandardLoadComposites(),
equalTo(closeRequest.getStandardLoadComposites()));
Assert.assertArrayEquals(mockCompositeList().getStandardLoadComposites().toArray(),
closeRequest.getStandardLoadComposites().toArray());
Оба экземпляра возвращают эту ошибку AssertionError:
Ожидается , но
Кажется, он сравнивает ссылку, а не значения в объектах.Нужно ли переопределять оператор equals
, чтобы он сравнивал значения в объектах пользовательских объектов?