From e83cc6cf6c3025eec2b4d1ebcaec8664dc8667a2 Mon Sep 17 00:00:00 2001 From: Lathishbabu Ganesan Date: Mon, 18 Feb 2019 07:13:17 -0500 Subject: Added test case for Flow Controller Activator Increased the code coverage from 0% to 97% Issue-ID: APPC-1429 Change-Id: Iada494daad7939b00c76fead73be864c6b40e045 Signed-off-by: Lathishbabu Ganesan --- .../controller/TestFlowControllerActivator.java | 87 ++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 appc-config/appc-flow-controller/provider/src/test/java/org/onap/appc/flow/controller/TestFlowControllerActivator.java (limited to 'appc-config/appc-flow-controller') diff --git a/appc-config/appc-flow-controller/provider/src/test/java/org/onap/appc/flow/controller/TestFlowControllerActivator.java b/appc-config/appc-flow-controller/provider/src/test/java/org/onap/appc/flow/controller/TestFlowControllerActivator.java new file mode 100644 index 000000000..7aab8024f --- /dev/null +++ b/appc-config/appc-flow-controller/provider/src/test/java/org/onap/appc/flow/controller/TestFlowControllerActivator.java @@ -0,0 +1,87 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2019 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.appc.flow.controller; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; +import static org.mockito.Matchers.anyObject; +import static org.mockito.Matchers.anyString; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.when; +import java.util.List; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mockito; +import org.mockito.internal.util.reflection.Whitebox; +import org.onap.ccsdk.sli.core.sli.provider.SvcLogicService; +import org.osgi.framework.Bundle; +import org.osgi.framework.BundleContext; +import org.osgi.framework.FrameworkUtil; +import org.osgi.framework.ServiceRegistration; +import org.powermock.api.mockito.PowerMockito; +import org.powermock.core.classloader.annotations.PrepareForTest; +import org.powermock.modules.junit4.PowerMockRunner; + +@RunWith(PowerMockRunner.class) +@PrepareForTest(FrameworkUtil.class) +public class TestFlowControllerActivator { + + private FlowControllerActivator flowControllerActivator; + private Bundle bundle; + private BundleContext ctx; + private ServiceRegistration registration = null; + + @Before + public void setUp() throws Exception { + flowControllerActivator = new FlowControllerActivator(); + ctx = Mockito.mock(BundleContext.class); + PowerMockito.mockStatic(FrameworkUtil.class); + bundle = Mockito.mock(Bundle.class); + PowerMockito.when(FrameworkUtil.getBundle(SvcLogicService.class)).thenReturn(bundle); + PowerMockito.when(bundle.getBundleContext()).thenReturn(ctx); + registration = Mockito.mock(ServiceRegistration.class); + when(ctx.registerService(anyString(), anyObject(), eq(null))).thenReturn(registration); + } + + @Test + public void testStart() { + flowControllerActivator.start(ctx); + List registrations = + (List) Whitebox.getInternalState(flowControllerActivator, "registrations"); + assertNotNull(registrations.get(0)); + } + + @Test + public void testStartException() { + flowControllerActivator.start(null); + List registrations = + (List) Whitebox.getInternalState(flowControllerActivator, "registrations"); + assertTrue(registrations.isEmpty()); + } + + @Test + public void testStop() { + flowControllerActivator.stop(ctx); + List registrations = + (List) Whitebox.getInternalState(flowControllerActivator, "registrations"); + assertTrue(registrations.isEmpty()); + } + +} -- cgit href='#n23'>23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147