Assert that the list is not empty - with or without Hamcrest?

Prakhar picture Prakhar · Jan 29, 2014 · Viewed 18k times · Source

This is related to Checking that a List is not empty in Hamcrest

I have a question over that - If we can assert the list is not empty without using Hamcrest and just using JUnit as:

assertFalse(list.isEmpty());

Is using

assertThat(list.isEmpty(), is(false));

or

assertThat((Collection)list, is(not(empty())));

Worthwhile?

I'm not able to understand are we gaining something using Hamcrest version in this case? Are both equivalent?

Answer

Jeff Storey picture Jeff Storey · Jan 29, 2014

They are the same functionality. The hamcrest provides a more English-like readable language and better error messages. In simple cases like this, I would probably just use the assertFalse