package io.ebeaninternal.api; import org.junit.Test; import static org.assertj.core.api.Assertions.assertThat; public class HashQueryPlanTest { private HashQueryPlan hqp(String raw, int plan, int bind) { return new HashQueryPlan(raw, plan, bind); } private int hc(String raw, int plan, int bind) { return hqp(raw, plan, bind).hashCode(); } @Test public void testEquals() throws Exception { assertThat(hqp("foo", 10, 7)).isEqualTo(hqp("foo", 10, 7)); assertThat(hqp("foo", 10, 7)).isNotEqualTo(hqp("foo", 11, 7)); assertThat(hqp("foo", 10, 7)).isNotEqualTo(hqp("foo", 9, 7)); assertThat(hqp("foo", 10, 7)).isNotEqualTo(hqp("foo", 10, 8)); assertThat(hqp("foo", 10, 7)).isNotEqualTo(hqp("foo", 10, 6)); assertThat(hqp("foo", 10, 7)).isNotEqualTo(hqp("bar", 10, 6)); assertThat(hqp("foo", 10, 7)).isNotEqualTo(hqp(null, 10, 7)); assertThat(hqp(null, 10, 7)).isNotEqualTo(hqp("foo", 10, 7)); assertThat(hqp(null, 10, 7)).isEqualTo(hqp(null, 10, 7)); } @Test public void testHashCode() throws Exception { assertThat(hc("foo", 10, 7)).isEqualTo(hc("foo", 10, 7)); assertThat(hc("foo", 10, 7)).isNotEqualTo(hc("foo", 11, 7)); assertThat(hc("foo", 10, 7)).isNotEqualTo(hc("foo", 9, 7)); assertThat(hc("foo", 10, 7)).isNotEqualTo(hc("foo", 10, 8)); assertThat(hc("foo", 10, 7)).isNotEqualTo(hc("foo", 10, 6)); assertThat(hc("foo", 10, 7)).isNotEqualTo(hc("bar", 10, 6)); assertThat(hc("foo", 10, 7)).isNotEqualTo(hc(null, 10, 7)); assertThat(hc(null, 10, 7)).isNotEqualTo(hc("foo", 10, 7)); assertThat(hc(null, 10, 7)).isEqualTo(hc(null, 10, 7)); } }