Утверждение о Списке в Junit

У меня был еще один нечетный случай: pass '@' + @Model.SomeProperty к ссылке href.

. Лучшее решение для этого случая было дано IMO в в этом ответе на аналогичный вопрос. И @@, и @: не работают при использовании html-кода @, что усложнит ситуацию.

Итак, мой код был

@Html.Raw('@')@Model.SomePropery также работали.

141
задан Raedwald 2 March 2018 в 07:50
поделиться

1 ответ

Это устаревший ответ, подходящий для JUnit 4.3 и ниже. Современная версия JUnit включает встроенные читаемые сообщения о сбоях в методе assertThat. Предпочтите другие ответы на этот вопрос, если это возможно.

List<E> a = resultFromTest();
List<E> expected = Arrays.asList(new E(), new E(), ...);
assertTrue("Expected 'a' and 'expected' to be equal."+
            "\n  'a'        = "+a+
            "\n  'expected' = "+expected, 
            expected.equals(a));

Для справки, как отметил @Paul в своем комментарии к этому ответу, два Listа равны:

если и только если указанный объект также является списком, оба списка имеют одинаковый размер, и все соответствующие пары элементов в двух списках равны. (Два элемента e1 и e2 равны, если (e1==null ? e2==null : e1.equals(e2))). Другими словами, два списка считаются равными, если они содержат одинаковые элементы в одинаковом порядке. Это определение гарантирует, что метод equals работает правильно в различных реализациях интерфейса List.

См. JavaDocs интерфейса List.

20
ответ дан 23 November 2019 в 22:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: