diff options
author | dglFromAtt <dgl@research.att.com> | 2019-04-10 16:25:57 -0400 |
---|---|---|
committer | dglFromAtt <dgl@research.att.com> | 2019-04-10 16:26:03 -0400 |
commit | 479c7a5645b6f3f9bf478f925fa2009597871a7b (patch) | |
tree | aa4bf8ec1aac465dbf76b965908628fc553c6829 /src/test/java | |
parent | 4444a934c6ad97d0222abc351af4c392d42f654e (diff) |
Added MirrorMaker unit tests
Change-Id: I580d350c663f06754a38ae58941de6e812f8cb03
Signed-off-by: dglFromAtt <dgl@research.att.com>
Issue-ID: DMAAP-1095
Diffstat (limited to 'src/test/java')
-rw-r--r-- | src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTest.java | 184 | ||||
-rw-r--r-- | src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTestMockito.java | 97 |
2 files changed, 281 insertions, 0 deletions
diff --git a/src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTest.java b/src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTest.java new file mode 100644 index 0000000..787d232 --- /dev/null +++ b/src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTest.java @@ -0,0 +1,184 @@ +/*- + * ============LICENSE_START======================================================= + * org.onap.dmaap + * ================================================================================ + * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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========================================================= + */ +package org.onap.dmaap.dbcapi.service; + +import org.onap.dmaap.dbcapi.model.*; +import org.onap.dmaap.dbcapi.testframework.DmaapObjectFactory; +import org.onap.dmaap.dbcapi.testframework.ReflectionHarness; + +import static org.junit.Assert.*; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import java.util.List; +import java.util.ArrayList; + +public class MirrorMakerServiceTest { + + private static final String fmt = "%24s: %s%n"; + private static DmaapObjectFactory factory = new DmaapObjectFactory(); + ReflectionHarness rh = new ReflectionHarness(); + + private MirrorMakerService mms; + private TopicService ts; + private MR_ClusterService mcs; + private MR_ClientService cls; + private DcaeLocationService dls; + + DmaapService ds; + String locname; + + @Before + public void setUp() throws Exception { + mms = new MirrorMakerService(); + ts = new TopicService(); + assert( ts != null ); + mcs = new MR_ClusterService(); + assert( mcs != null ); + Dmaap nd = factory.genDmaap(); + ds = new DmaapService(); + ds.addDmaap( nd ); + ts = new TopicService(); + mcs = new MR_ClusterService(); + cls = new MR_ClientService(); + + dls = new DcaeLocationService(); + DcaeLocation loc = factory.genDcaeLocation( "central" ); + locname = loc.getDcaeLocationName(); + dls.addDcaeLocation( loc ); + loc = factory.genDcaeLocation( "edge"); + dls.addDcaeLocation( loc ); + + ApiError err = new ApiError(); + + MR_Cluster node = factory.genMR_Cluster( "central" ); + mcs.addMr_Cluster( node, err); + node = factory.genMR_Cluster("edge" ); + mcs.addMr_Cluster(node, err); + } + + @After + public void tearDown() throws Exception { + } + + +// @Test +// public void test_getters() { +// +// +// rh.reflect( "org.onap.dmaap.dbcapi.service.MirrorMakerService", "get", null ); +// +// } + + @Test + public void test_setters() { + String v = "Validate"; + rh.reflect( "org.onap.dmaap.dbcapi.service.MirrorMakerService", "set", v ); + + } + + + + @Test + public void CreateMirrorMakerWithSingleTopic() { + ApiError err = new ApiError(); + + String t = "org.onap.dmaap.bridgingTopic"; + Topic topic = factory.genSimpleTopic(t); + topic.setReplicationCase( ReplicationType.REPLICATION_EDGE_TO_CENTRAL ); + + String c = "publisher"; + String[] a = { "sub", "view" }; + MR_Client sub = factory.genMR_Client("central", topic.getFqtn(), c, a ); + String[] b = { "pub", "view" }; + MR_Client pub = factory.genMR_Client( "edge", topic.getFqtn(), c, b ); + ArrayList<MR_Client> clients = new ArrayList<MR_Client>(); + + clients.add( sub ); + clients.add( pub ); + + topic.setClients( clients ); + + Topic nTopic = ts.updateTopic( topic, err ); + + assertTrue( err.getCode() == 200 ); + + List<String> mma = mms.getAllMirrorMakers(); + } + + @Test + public void DeleteMirrorMakerWithSingleTopic() { + + + List<String> mma = mms.getAllMirrorMakers(); + + int nMM = mma.size(); + assertTrue( nMM >= 1); + + String name = mma.get(0); + + MirrorMaker mm = mms.getMirrorMaker(name); + + mms.delMirrorMaker(mm); + + mma = mms.getAllMirrorMakers(); + + assertTrue( mma.size() == (nMM-1) ); + } + + @Test + public void SplitMirrorMakerWithSingleTopic() { + + ApiError err = new ApiError(); + + String t = "org.onap.dmaap.bridgingTopic"; + Topic topic = factory.genSimpleTopic(t); + topic.setReplicationCase( ReplicationType.REPLICATION_EDGE_TO_CENTRAL ); + + String c = "publisher"; + String[] a = { "sub", "view" }; + MR_Client sub = factory.genMR_Client("central", topic.getFqtn(), c, a ); + String[] b = { "pub", "view" }; + MR_Client pub = factory.genMR_Client( "edge", topic.getFqtn(), c, b ); + ArrayList<MR_Client> clients = new ArrayList<MR_Client>(); + + clients.add( sub ); + clients.add( pub ); + + topic.setClients( clients ); + + Topic nTopic = ts.updateTopic( topic, err ); + + assertTrue( err.getCode() == 200 ); + List<String> mma = mms.getAllMirrorMakers(); + + int nMM = mma.size(); + assertTrue( nMM >= 1); + + String name = mma.get(0); + + MirrorMaker mm = mms.getMirrorMaker(name); + + MirrorMaker mm2 = mms.splitMM(mm); + + } + +} diff --git a/src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTestMockito.java b/src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTestMockito.java new file mode 100644 index 0000000..5beadc6 --- /dev/null +++ b/src/test/java/org/onap/dmaap/dbcapi/service/MirrorMakerServiceTestMockito.java @@ -0,0 +1,97 @@ +/*- + * ============LICENSE_START======================================================= + * org.onap.dmaap + * ================================================================================ + * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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========================================================= + */ +package org.onap.dmaap.dbcapi.service; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; +import static org.mockito.Matchers.anyString; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.verifyZeroInteractions; + +import java.io.PrintWriter; +import java.io.StringWriter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExpectedException; +import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.Spy; +import org.mockito.runners.MockitoJUnitRunner; +import org.onap.aaf.cadi.filter.CadiFilter; +import org.onap.dmaap.dbcapi.model.MirrorMaker; +import org.onap.dmaap.dbcapi.util.DmaapConfig; + +@RunWith(MockitoJUnitRunner.class) +public class MirrorMakerServiceTestMockito { + + @Spy + private MirrorMakerService service; + + @Mock + private CadiFilter cadiFilterMock; + @Mock + private HttpServletRequest servletRequest; + @Mock + private HttpServletResponse servletResponse; + + @Mock + private DmaapConfig dmaapConfig; + + @Mock + private MirrorMaker mm = new MirrorMaker(); + + @Rule + public ExpectedException thrown = ExpectedException.none(); + + @Before + public void setUp() throws Exception { + + } + + @Test + public void init_normalConstructor() throws Exception { + //given + + + //when + + + //then + assertEquals( MirrorMakerService.getProvUserPwd(), MirrorMakerService.PROV_PWD_DEFAULT); + assertEquals( MirrorMakerService.getDefaultConsumerPort(), MirrorMakerService.TARGET_REPLICATION_PORT_DEFAULT); + assertEquals( MirrorMakerService.getDefaultProducerPort(), MirrorMakerService.SOURCE_REPLICATION_PORT_DEFAULT); + } + + // Todo: learn how to make more tests in Mockito + + +} |