@Test public void should_Manage_Consumers_Without_Registering_Duplicates() { messageConsumers.registerConsumer("announce", (SchemaAnnounceHandler) rh -> {}); assertEquals(1, messageConsumers.getConsumers().size()); assertTrue(messageConsumers.getConsumers().get("announce").isRegistered()); messageConsumers.registerConsumer("usage", (SchemaUsageHandler) rh -> {}); assertEquals(2, messageConsumers.getConsumers().size()); assertTrue(messageConsumers.getConsumers().get("usage").isRegistered()); messageConsumers.registerConsumer("usage", (SchemaUsageHandler) rh -> {}); assertEquals(2, messageConsumers.getConsumers().size()); assertTrue(messageConsumers.getConsumers().get("usage").isRegistered()); messageConsumers.unregisterConsumer("usage"); assertEquals(2, messageConsumers.getConsumers().size()); assertTrue(messageConsumers.getConsumers().get("usage").isRegistered()); messageConsumers.unregisterConsumer("usage"); assertEquals(1, messageConsumers.getConsumers().size()); messageConsumers.unregisterConsumer("usage"); assertEquals(1, messageConsumers.getConsumers().size()); assertTrue(messageConsumers.getConsumers().get("announce").isRegistered()); messageConsumers.unregisterConsumer("announce"); assertEquals(0, messageConsumers.getConsumers().size()); }
@Test public void should_Manage_Service_Consumers() { SchemaDefinition definition = SchemaDefinition .createInstance(droidsSchema, SchemaMetadata.create()); messageConsumers.registerServiceConsumer("DroidQueries", definition); assertEquals(1, messageConsumers.getConsumers().size()); assertTrue(messageConsumers.getConsumers().get("DroidQueries").isRegistered()); messageConsumers.registerServiceConsumer("DroidQueries", definition); assertEquals(1, messageConsumers.getConsumers().size()); messageConsumers.unregisterConsumer("DroidQueries"); assertEquals(1, messageConsumers.getConsumers().size()); messageConsumers.registerConsumer("announce", (SchemaAnnounceHandler) rh -> {}); assertEquals(2, messageConsumers.getConsumers().size()); messageConsumers.unregisterConsumer("DroidQueries"); assertEquals(1, messageConsumers.getConsumers().size()); messageConsumers.close(); assertEquals(0, messageConsumers.getConsumers().size()); }
@Test public void should_Cleanup_When_Closing() { messageConsumers.registerConsumer("announce", (SchemaAnnounceHandler) rh -> {}); messageConsumers.registerConsumer("announce", (SchemaAnnounceHandler) rh -> {}); messageConsumers.registerConsumer("announce1", (SchemaAnnounceHandler) rh -> {}); messageConsumers.registerConsumer("announce1", (SchemaAnnounceHandler) rh -> {}); messageConsumers.registerConsumer("usage", (SchemaUsageHandler) rh -> {}); messageConsumers.registerConsumer("usage1", (SchemaUsageHandler) rh -> {}); messageConsumers.registerConsumer("announce", (SchemaUsageHandler) rh -> {}); assertEquals(4, messageConsumers.getConsumers().size()); messageConsumers.close(); assertEquals(0, messageConsumers.getConsumers().size()); } }