У меня был еще один нечетный случай: pass '@' + @Model.SomeProperty
к ссылке href.
. Лучшее решение для этого случая было дано IMO в в этом ответе на аналогичный вопрос. И @@
, и @:
не работают при использовании html-кода @
, что усложнит ситуацию.
@Html.Raw('@')@Model.SomePropery
также работали.
Это устаревший ответ, подходящий для 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
.