diff options
author | Taka <tc012c@att.com> | 2018-02-13 16:02:05 -0500 |
---|---|---|
committer | Patrick Brady <pb071s@att.com> | 2018-02-14 20:21:59 +0000 |
commit | 37cbf4c51a143579ab31a4b5ef2ca1e57b26cb1a (patch) | |
tree | 197ff4606969866ca96b811c1b3b0cebbbec6112 /appc-adapters/appc-rest-healthcheck-adapter/appc-rest-healthcheck-adapter-bundle/src/test | |
parent | 4f5ffd69ed455076c511497c2d91e496bb1fbe59 (diff) |
UnitTest for Rest Healthcheck activator
Change-Id: I214f14cc0dbc735d87bcbf5b59cf286d41dc826b
Issue-ID: APPC-624
Signed-off-by: Taka <tc012c@att.com>
Diffstat (limited to 'appc-adapters/appc-rest-healthcheck-adapter/appc-rest-healthcheck-adapter-bundle/src/test')
-rw-r--r-- | appc-adapters/appc-rest-healthcheck-adapter/appc-rest-healthcheck-adapter-bundle/src/test/java/org/onap/appc/adapter/restHealthcheck/RestHealthcheckActivatorTest.java | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/appc-adapters/appc-rest-healthcheck-adapter/appc-rest-healthcheck-adapter-bundle/src/test/java/org/onap/appc/adapter/restHealthcheck/RestHealthcheckActivatorTest.java b/appc-adapters/appc-rest-healthcheck-adapter/appc-rest-healthcheck-adapter-bundle/src/test/java/org/onap/appc/adapter/restHealthcheck/RestHealthcheckActivatorTest.java new file mode 100644 index 000000000..dd5716d9c --- /dev/null +++ b/appc-adapters/appc-rest-healthcheck-adapter/appc-rest-healthcheck-adapter-bundle/src/test/java/org/onap/appc/adapter/restHealthcheck/RestHealthcheckActivatorTest.java @@ -0,0 +1,111 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2018 AT&T 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.appc.adapter.restHealthcheck; + +import static org.mockito.BDDMockito.given; +import static org.mockito.BDDMockito.then; +import static org.mockito.Matchers.eq; +import static org.mockito.Matchers.isA; +import static org.mockito.Matchers.isNull; +import static org.mockito.Mockito.only; + +import java.util.Dictionary; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.runners.MockitoJUnitRunner; +import org.onap.appc.adapter.restHealthcheck.impl.RestHealthcheckAdapterImpl; +import org.osgi.framework.BundleContext; +import org.osgi.framework.ServiceRegistration; + +@RunWith(MockitoJUnitRunner.class) +public class RestHealthcheckActivatorTest { + + @Mock + private ServiceRegistration<RestHealthcheckActivator> serviceRegistration; + @Mock + private BundleContext bundleContext; + + private RestHealthcheckActivator restHealthcheckActivator = new RestHealthcheckActivator(); + + @Before + public void setUp() { + given(bundleContext.registerService(eq(RestHealthcheckAdapter.class), isA(RestHealthcheckAdapterImpl.class), isNull( + Dictionary.class))).willReturn(serviceRegistration); + } + + @Test + public void start_shouldRegisterService_whenRegistrationOccursForTheFirstTime() throws Exception { + registerService(); + + then(bundleContext).should(only()) + .registerService(eq(RestHealthcheckAdapter.class), isA(RestHealthcheckAdapterImpl.class), isNull( + Dictionary.class)); + } + + @Test + public void start_shouldRegisterServiceOnlyOnce_whenServiceRegistrationIsNotNull() throws Exception { + // GIVEN + registerService(); + + // WHEN + registerService(); + + // THEN + then(bundleContext).should(only()).registerService(eq(RestHealthcheckAdapter.class), isA(RestHealthcheckAdapterImpl.class), isNull( + Dictionary.class)); + } + + @Test + public void stop_shouldUnregisterService_whenServiceRegistrationObjectIsNotNull() throws Exception { + // GIVEN + registerService(); + + // WHEN + unregisterService(); + + // THEN + then(serviceRegistration).should().unregister(); + } + + @Test + public void stop_shouldNotAttemptToUnregisterService_whenServiceHasAlreadyBeenUnregistered() + throws Exception { + // GIVEN + registerService(); + unregisterService(); + + // WHEN + unregisterService(); + + // THEN + then(serviceRegistration).should(only()).unregister(); + } + + private void registerService() throws Exception { + restHealthcheckActivator.start(bundleContext); + } + + private void unregisterService() throws Exception { + restHealthcheckActivator.stop(bundleContext); + } +} |