package org.jvalue.ods.api.notifications; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import org.junit.Assert; import org.junit.Test; public final class ClientTest { @Test public final void testEquals() { DummyClient client1 = new DummyClient("0", "source1"); DummyClient client2 = new DummyClient("0", "source1"); DummyClient client3 = new DummyClient("1", "source1"); DummyClient client4 = new DummyClient("0", "source2"); Assert.assertEquals(client1, client1); Assert.assertEquals(client1, client2); Assert.assertNotEquals(client1, client3); Assert.assertNotEquals(client1, client4); Assert.assertNotEquals(client1, null); Assert.assertNotEquals(client1, new Object()); Assert.assertEquals(client1.hashCode(), client1.hashCode()); Assert.assertEquals(client1.hashCode(), client2.hashCode()); Assert.assertNotEquals(client1.hashCode(), client3.hashCode()); Assert.assertNotEquals(client1.hashCode(), client4.hashCode()); } @Test public final void testGet() { DummyClient client = new DummyClient("0", "source"); Assert.assertEquals(client.getId(), "0"); Assert.assertEquals(client.getType(), "source"); } private static final class DummyClient extends Client { @JsonCreator public DummyClient( @JsonProperty("clientId") String clientId, @JsonProperty("source") String source) { super(clientId, source); } public <P,R> R accept(ClientVisitor<P,R> visitor, P param) { throw new UnsupportedOperationException("dummy"); } } }