Есть ли смысловая разница между написанием
assertThat(object1, is(equalTo(object2)));
и запись
assertThat(object1, equalTo(object2)));
? Если нет, я бы предпочел первую версию, потому что она читается лучше. Есть ли здесь другие соображения?
Документация говорит обо всем: Украшает другого Matcher, сохраняя поведение, но позволяя тестам быть немного более выразительными. например. assertThat (сыр, равный (вонючий)) vs assertThat (сыр, есть (равно (вонючий)))
http://www.junit.org/apidocs/org/hamcrest/core/Is.html Другими словами, вы на правильном пути.
Насколько я знаю, они эквивалентны. Сопоставитель "Is" просто проходит к содержащемуся сопоставителю. Похоже, что он добавляет читабельность и, возможно, обратную совместимость.
Is