diff options
author | Gilding, Joyce (jg640n) <Joyce.Gilding@amdocs.com> | 2018-01-29 15:00:04 +0000 |
---|---|---|
committer | Gilding, Joyce (jg640n) <Joyce.Gilding@amdocs.com> | 2018-01-30 10:24:18 +0000 |
commit | 4150ee34ae503c83734aca7e62ca9911b354c881 (patch) | |
tree | 6598a1d16483eb480664b8862c86ba801af6d661 /event-client-dmaap/src/test | |
parent | 4e6e8b2714f3e5fe6d6dc064d9d73275c5ee5437 (diff) |
Initial code submit for Event Bus Client library
Change-Id: If0ff82c669872c734ebe0c72bc022beb96c53d11
Issue-ID: AAI-700
Signed-off-by: Gilding, Joyce (jg640n) <Joyce.Gilding@amdocs.com>
Diffstat (limited to 'event-client-dmaap/src/test')
3 files changed, 241 insertions, 0 deletions
diff --git a/event-client-dmaap/src/test/java/org/onap/aai/event/client/TestDMaaPEventConsumer.java b/event-client-dmaap/src/test/java/org/onap/aai/event/client/TestDMaaPEventConsumer.java new file mode 100644 index 0000000..9298a35 --- /dev/null +++ b/event-client-dmaap/src/test/java/org/onap/aai/event/client/TestDMaaPEventConsumer.java @@ -0,0 +1,81 @@ +/** + * ============LICENSE_START======================================================= + * org.onap.aai + * ================================================================================ + * Copyright © 2017 AT&T Intellectual Property. All rights reserved. + * Copyright © 2017 European Software Marketing Ltd. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.aai.event.client; + +import com.att.nsa.mr.client.impl.MRConsumerImpl; +import java.net.MalformedURLException; +import javax.naming.OperationNotSupportedException; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.runners.MockitoJUnitRunner; + +@RunWith(MockitoJUnitRunner.class) +public class TestDMaaPEventConsumer { + + @Mock + public MRConsumerImpl mockDMaaPConsumer; + + @Before + public void init() throws Exception { + DMaaPEventConsumer + .setConsumerFactory((hosts, topic, g, id, timeout, limit, f, user, pass) -> mockDMaaPConsumer); + } + + @Test + public void testConstructors() throws MalformedURLException { + createConsumerWithDefaults(); + new DMaaPEventConsumer("", "", "", "", "", "", 0, 0, ""); + } + + @Test + public void consumeZeroRecords() throws Exception { + DMaaPEventConsumer consumer = createConsumerWithDefaults(); + consumer.consume(); + consumer.consumeAndCommit(); + } + + @Test(expected = OperationNotSupportedException.class) + public void consumeWithOffsets() throws Exception { + DMaaPEventConsumer consumer = createConsumerWithDefaults(); + consumer.consumeWithOffsets(); + } + + @Test(expected = OperationNotSupportedException.class) + public void commitOffsets() throws Exception { + DMaaPEventConsumer consumer = createConsumerWithDefaults(); + consumer.commitOffsets(); + } + + @Test(expected = OperationNotSupportedException.class) + public void commitOffsetsLong() throws Exception { + DMaaPEventConsumer consumer = createConsumerWithDefaults(); + consumer.commitOffsets(0); + } + + private DMaaPEventConsumer createConsumerWithDefaults() throws MalformedURLException { + return new DMaaPEventConsumer("", "", "", "", "", ""); + } +} diff --git a/event-client-dmaap/src/test/java/org/onap/aai/event/client/TestDMaaPEventPublisher.java b/event-client-dmaap/src/test/java/org/onap/aai/event/client/TestDMaaPEventPublisher.java new file mode 100644 index 0000000..fc71f30 --- /dev/null +++ b/event-client-dmaap/src/test/java/org/onap/aai/event/client/TestDMaaPEventPublisher.java @@ -0,0 +1,118 @@ +/** + * ============LICENSE_START======================================================= + * org.onap.aai + * ================================================================================ + * Copyright © 2017 AT&T Intellectual Property. All rights reserved. + * Copyright © 2017 European Software Marketing Ltd. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.aai.event.client; + +import com.att.nsa.mr.client.MRPublisher.message; +import com.att.nsa.mr.client.impl.MRSimplerBatchPublisher; +import java.net.MalformedURLException; +import java.util.Arrays; +import java.util.Properties; +import org.junit.After; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.runners.MockitoJUnitRunner; +import org.onap.aai.event.client.DMaaPEventPublisher.MRPublisherFactory; + +@RunWith(MockitoJUnitRunner.class) +public class TestDMaaPEventPublisher { + + private static MRPublisherFactory defaultFactory = DMaaPEventPublisher.getPublisherFactory(); + + @Mock + public MRSimplerBatchPublisher mockDmaapPublisher; + + @After + public void restorePublisherFactory() { + DMaaPEventPublisher.setPublisherFactory(defaultFactory); + } + + public void mockPublisherFactory() { + DMaaPEventPublisher.setPublisherFactory((host, topic, size, age, delay) -> mockDmaapPublisher); + } + + @Test + public void testDefaultFactory() throws MalformedURLException { + createPublisherWithDefaults(); + } + + @Test(expected = IllegalArgumentException.class) + public void testCreatePublisherWithoutHost() throws MalformedURLException { + new DMaaPEventPublisher("", "topic", "", ""); + } + + @Test + public void testConstructors() throws MalformedURLException { + createMockedPublisher(); + new DMaaPEventPublisher("", "", "", "", 0, 0, 0, ""); + } + + @Test + public void publishSynchronous() throws Exception { + Mockito.when(mockDmaapPublisher.getProps()).thenReturn(new Properties()); + message message = new message("partition", "message"); + Mockito.when(mockDmaapPublisher.close(Mockito.anyInt(), Mockito.any())).thenReturn(Arrays.asList(message)); + DMaaPEventPublisher publisher = createMockedPublisher(); + publisher.sendSync(""); + publisher.sendSync(Arrays.asList("")); + publisher.sendSync("key", ""); + publisher.sendSync("key", Arrays.asList("")); + publisher.close(); + publisher.closeWithUnsent(); + } + + @Test(expected = UnsupportedOperationException.class) + public void sendAsync() throws Exception { + DMaaPEventPublisher publisher = createMockedPublisher(); + publisher.sendAsync(""); + } + + @Test(expected = UnsupportedOperationException.class) + public void sendAsyncMultiple() throws Exception { + DMaaPEventPublisher publisher = createMockedPublisher(); + publisher.sendAsync(Arrays.asList("")); + } + + @Test(expected = UnsupportedOperationException.class) + public void sendAsyncWithPartition() throws Exception { + DMaaPEventPublisher publisher = createMockedPublisher(); + publisher.sendAsync("partition", ""); + } + + @Test(expected = UnsupportedOperationException.class) + public void sendAsyncWithPartitionMultiple() throws Exception { + DMaaPEventPublisher publisher = createMockedPublisher(); + publisher.sendAsync("partition", Arrays.asList("")); + } + + private DMaaPEventPublisher createPublisherWithDefaults() throws MalformedURLException { + return new DMaaPEventPublisher("host", "topic", "", ""); + } + + private DMaaPEventPublisher createMockedPublisher() throws MalformedURLException { + mockPublisherFactory(); + return createPublisherWithDefaults(); + } +} diff --git a/event-client-dmaap/src/test/java/org/onap/aai/event/client/logging/TestApplicationMsgs.java b/event-client-dmaap/src/test/java/org/onap/aai/event/client/logging/TestApplicationMsgs.java new file mode 100644 index 0000000..12054b3 --- /dev/null +++ b/event-client-dmaap/src/test/java/org/onap/aai/event/client/logging/TestApplicationMsgs.java @@ -0,0 +1,42 @@ +/** + * ============LICENSE_START======================================================= + * org.onap.aai + * ================================================================================ + * Copyright © 2017 AT&T Intellectual Property. All rights reserved. + * Copyright © 2017 European Software Marketing Ltd. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.aai.event.client.logging; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.not; +import static org.junit.Assert.assertThat; + +import org.junit.Test; + +public class TestApplicationMsgs { + + /** + * This test is used to ensure that the static initializer for ApplicationMsgs is invoked. + */ + @Test + public void accessEnumValues() { + assertThat(ApplicationMsgs.values().length, is(not(0))); + } + +} |