package org.distributeme.registry.esregistry; import net.anotheria.util.IdCodeGenerator; import org.distributeme.core.ServiceDescriptor; import org.distributeme.core.ServiceDescriptor.Protocol; import org.junit.Test; import static org.junit.Assert.*; public class ChannelDescriptorTest { @Test public void testEqualsAndHashCode(){ ChannelDescriptor emptyA = new ChannelDescriptor("A"); ChannelDescriptor emptyB = new ChannelDescriptor("B"); ChannelDescriptor emptyA2 = new ChannelDescriptor("A"); ChannelDescriptor fullA = new ChannelDescriptor("A"); fullA.addConsumer(createDummyServiceDescriptor()); fullA.addSupplier(createDummyServiceDescriptor()); assertEquals(emptyA, emptyA2); assertEquals(emptyA.hashCode(), emptyA2.hashCode()); assertFalse(emptyA.equals(emptyB)); assertFalse(emptyA.hashCode()==emptyB.hashCode()); assertEquals(emptyA, fullA); assertEquals(emptyA.hashCode(), fullA.hashCode()); } @Test public void testToString(){ ChannelDescriptor c = new ChannelDescriptor("teststring1"); c.addConsumer(new ServiceDescriptor(Protocol.RMI, "consumer1", IdCodeGenerator.generateCode(5), "consumerhost", 9250)); c.addSupplier(new ServiceDescriptor(Protocol.RMI, "supplier1", IdCodeGenerator.generateCode(5), "supplierhost", 9260)); String toString = c.toString(); assertNotNull(toString); //assert all needed strings are included assertTrue(toString.indexOf("consumerhost")!=-1); assertTrue(toString.indexOf("consumer1")!=-1); assertTrue(toString.indexOf("9250")!=-1); assertTrue(toString.indexOf("9260")!=-1); assertTrue(toString.indexOf("supplier1")!=-1); assertTrue(toString.indexOf("supplierhost")!=-1); } @Test public void testAddRemove(){ ChannelDescriptor c = new ChannelDescriptor("AAA"); assertEquals(0, c.getConsumers().size()); ServiceDescriptor c1 = createDummyServiceDescriptor(); c.addConsumer(c1); assertEquals(1, c.getConsumers().size()); c.removeConsumer(c1); assertEquals(0, c.getConsumers().size()); //suppliers assertEquals(0, c.getSuppliers().size()); ServiceDescriptor s1 = createDummyServiceDescriptor(); c.addSupplier(s1); assertEquals(1, c.getSuppliers().size()); c.removeSupplier(s1); assertEquals(0, c.getSuppliers().size()); } private ServiceDescriptor createDummyServiceDescriptor(){ return new ServiceDescriptor(Protocol.RMI, EventServiceRegistryTest.class.getName(), IdCodeGenerator.generateCode(5), "localhost", 9250); } }