2013-07-11 2 views
4

У меня есть список класса (EDIT: я написал сам), с помощью метода List.equals, поэтому я хочу, чтобы запустить что-то вродеКак испытать .equals() метод с использованием JUnit и Hamcrest

List list1 = new List(); 
List list2 = new List(); 
assertTrue(list1.equals(list2)); 

Таким образом, используя matchers и assertThat, я подумал, что

assertThat(list1.equals(list2), is(true)); 

Но это становится довольно глупо ... EDIT: может быть, я могу написать мои собственные согласовани

есть ли лучший способ проверить, если мой метод равно является правильно работать?

Это с JUnit4.5

ответ

9
import static org.hamcrest.Matchers.equalTo; 
import static org.hamcrest.MatcherAssert.assertThat;  

... 

assertThat(list1, equalTo(list2)); 
+0

Это то, что мне было нужно, он автоматически вызывает метод .equals, я не понимал, что это вариант. – Henry

+4

«is» matcher также является синонимом 'equalTo'. –

1

assertEquals(list1, list2) является самым простым способом.

+5

Вопрос о Hamcrest. – samlewis

+0

Если это утверждение не удастся, сообщение будет довольно запутанным. – Olaf