package rabbitescape.engine; import static org.hamcrest.MatcherAssert.*; import static org.hamcrest.CoreMatchers.*; import static rabbitescape.engine.Tools.*; import org.junit.Test; public class TestTools { @Test public void Empty_string_lines_matcher_equals_empty() { assertThat( new String[] {}, equalTo() ); } @Test public void Empty_string_lines_matcher_not_equals_nonempty() { assertThat( new String[] { "x" }, not( equalTo() ) ); } @Test public void Nonempty_string_lines_matcher_not_equals_empty() { assertThat( new String[] {}, not( equalTo( "x", "y" ) ) ); } @Test public void Complex_equal_lines() { assertThat( new String[] { "#####", "# #", "# #", "# #", "#r #", "#####" }, equalTo( "#####", "# #", "# #", "# #", "#r #", "#####" ) ); } @Test public void Same_length_but_different() { assertThat( new String[] { "#####", "# #", "#XXX#", "# #", "#r #", "#####" }, not( equalTo( "#####", "# #", "# #", "# #", "#r #", "#####" ) ) ); } @Test public void Different_num_lines() { assertThat( new String[] { "#####", "# #", "# #", "# #", "#r #", "#####" }, not( equalTo( "#####", "# #", "# #" ) ) ); } @Test public void Different_length_lines() { assertThat( new String[] { "#####", "# #", "# ##", "# #", "#r #", "#####" }, not( equalTo( "#####", "# #", "# #", "# #", "#r #", "#####" ) ) ); } @Test public void Larger_is_greater_than_smaller() { assertThat( 0, greaterThan( -1 ) ); assertThat( 10, greaterThan( 1 ) ); assertThat( 1, greaterThan( 0 ) ); assertThat( 10, greaterThan( -50 ) ); } @Test( expected = AssertionError.class ) public void Smaller_is_not_greater_than_larger() { assertThat( -1, greaterThan( 0 ) ); } @Test( expected = AssertionError.class ) public void Equal_is_not_greater_than() { assertThat( 10, greaterThan( 10 ) ); } @Test public void Samller_is_less_than_larger() { assertThat( -1, lessThan( 0 ) ); assertThat( 1, lessThan( 10 ) ); assertThat( 0, lessThan( 1 ) ); assertThat( -50, lessThan( 10 ) ); } @Test( expected = AssertionError.class ) public void Larger_is_not_less_than_smaller() { assertThat( 0, lessThan( -1 ) ); } @Test( expected = AssertionError.class ) public void Equal_is_not_less_than() { assertThat( 10, lessThan( 10 ) ); } }