aboutsummaryrefslogtreecommitdiffstats
path: root/vnfapi/provider/src/test/java/org/onap/sdnc/vnfapi/VfModuleTopologyOperationTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'vnfapi/provider/src/test/java/org/onap/sdnc/vnfapi/VfModuleTopologyOperationTest.java')
-rw-r--r--vnfapi/provider/src/test/java/org/onap/sdnc/vnfapi/VfModuleTopologyOperationTest.java388
1 files changed, 0 insertions, 388 deletions
diff --git a/vnfapi/provider/src/test/java/org/onap/sdnc/vnfapi/VfModuleTopologyOperationTest.java b/vnfapi/provider/src/test/java/org/onap/sdnc/vnfapi/VfModuleTopologyOperationTest.java
deleted file mode 100644
index beefb2ff..00000000
--- a/vnfapi/provider/src/test/java/org/onap/sdnc/vnfapi/VfModuleTopologyOperationTest.java
+++ /dev/null
@@ -1,388 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * Copyright (C) 2017 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.sdnc.vnfapi;
-
-import com.google.common.util.concurrent.CheckedFuture;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.mockito.Mockito;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
-import org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataBrokerAdapter;
-import org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec;
-import org.opendaylight.controller.md.sal.binding.test.AbstractDataBrokerTestCustomizer;
-import org.opendaylight.controller.md.sal.binding.test.ConcurrentDataBrokerTestCustomizer;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
-import org.opendaylight.controller.md.sal.dom.api.DOMDataBroker;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.VfModuleTopologyOperationInput;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.VfModuleTopologyOperationOutput;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.request.information.RequestInformation;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.request.information.RequestInformation.RequestAction;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.request.information.RequestInformationBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.vf.module.request.information.VfModuleRequestInformation;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.vf.module.request.information.VfModuleRequestInformationBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.vf.module.service.data.VfModuleServiceDataBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnctl.vnf.rev150720.VfModuleTopologyOperationInputBuilder;
-
-import java.util.Properties;
-import java.util.concurrent.ExecutionException;
-
-class VfModuleExceptionThrowerConfigurator {
- private boolean shouldThrowExceptionDuringTransactionPut;
-
- public VfModuleExceptionThrowerConfigurator() {
- this.shouldThrowExceptionDuringTransactionPut = true;
- }
-
- public boolean shouldThrowExceptionDuringTransactionPut() {
- return shouldThrowExceptionDuringTransactionPut;
- }
-
- public void setShouldThrowExceptionDuringTransactionPut(boolean shouldThrowExceptionDuringTransactionPut) {
- this.shouldThrowExceptionDuringTransactionPut = shouldThrowExceptionDuringTransactionPut;
- }
-}
-
-class VfModuleDataBrokerErrorMsgConfigurator {
- static public String JAVA_LANG_RUNTIME_EXCEPTION = "java.lang.RuntimeException: ";
- static public String TRANSACTION_WRITE_ERROR = "transaction-write-error";
-}
-
-class VfModuleDataBrokerStab extends BindingDOMDataBrokerAdapter {
- VfModuleExceptionThrowerConfigurator exceptionThrowerConfigurator;
-
- public VfModuleDataBrokerStab(final DOMDataBroker domDataBroker,
- final BindingToNormalizedNodeCodec codec, VfModuleExceptionThrowerConfigurator exceptionThrowerConfigurator) {
- super(domDataBroker, codec);
- this.exceptionThrowerConfigurator = exceptionThrowerConfigurator;
-
- }
-
- @Override
- public WriteTransaction newWriteOnlyTransaction() {
- if (exceptionThrowerConfigurator.shouldThrowExceptionDuringTransactionPut()) {
- return newThrowingExceptionWriteOnlyTransaction();
- }
- return newNotThrowingExceptionWriteOnlyTransaction();
- }
-
- private WriteTransaction newThrowingExceptionWriteOnlyTransaction() {
- WriteTransaction mockWriteTransaction = Mockito.mock(WriteTransaction.class);
- Mockito.doThrow(new RuntimeException(VfModuleDataBrokerErrorMsgConfigurator.TRANSACTION_WRITE_ERROR))
- .when(mockWriteTransaction).put(Mockito.any(), Mockito.any(), Mockito.any());
- return mockWriteTransaction;
- }
-
- private WriteTransaction newNotThrowingExceptionWriteOnlyTransaction() {
- WriteTransaction mockWriteTransaction = Mockito.mock(WriteTransaction.class);
- CheckedFuture<Void, TransactionCommitFailedException> mockCheckedFuture =
- Mockito.mock(CheckedFuture.class);
- Mockito.doNothing().when(mockWriteTransaction).put(Mockito.any(), Mockito.any(), Mockito.any());
- Mockito.doReturn(mockCheckedFuture).when(mockWriteTransaction).submit();
- return mockWriteTransaction;
- }
-}
-
-class VfModuleProviderDataBrokerTestCustomizer extends ConcurrentDataBrokerTestCustomizer {
- VfModuleExceptionThrowerConfigurator exceptionThrowerConfigurator;
-
- public VfModuleProviderDataBrokerTestCustomizer(VfModuleExceptionThrowerConfigurator exceptionThrowerConfigurator) {
- super(false);
- this.exceptionThrowerConfigurator = exceptionThrowerConfigurator;
- }
-
- public DataBroker createDataBroker() {
- return new VfModuleDataBrokerStab(createDOMDataBroker(),
- super.getBindingToNormalized(), this.exceptionThrowerConfigurator);
- }
-}
-
-@RunWith(MockitoJUnitRunner.class)
-public class VfModuleTopologyOperationTest extends VnfApiProviderTest {
- protected static final Logger LOG = LoggerFactory.getLogger(VfModuleTopologyOperationTest.class);
-
- private static final String INVALID_VFMODULEID = "invalid input, null or empty vf-module-id";
- private static final String INVALID_VNFINSTANCEID = "invalid input, null or empty vnf-instance-id";
- private static final String NO_SERVICE_LOGIC = "No service logic active for VNF-API: \'vf-module-topology-operation\'";
- private static final String VF_MODULE_ID = "vfModule1";
- private static final String VNF_INSTANCE_ID = "vnfInstance1";
- private static final String PRELOAD_NAME = "preloadName";
- private static final String PRELOAD_TYPE = "preloadType";
- private static final String ERROR_CODE = "error-code";
-
- private static final String ERROR_MESSAGE = "error-message";
- private static final String ACK_FINAL = "ack-final";
- private static final String SVC_OPERATION = "vf-module-topology-operation";
-
- private VfModuleExceptionThrowerConfigurator exceptionThrowerConfigurator;
-
- @Override
- protected AbstractDataBrokerTestCustomizer createDataBrokerTestCustomizer() {
- this.exceptionThrowerConfigurator = new VfModuleExceptionThrowerConfigurator();
- return new VfModuleProviderDataBrokerTestCustomizer(this.exceptionThrowerConfigurator);
- }
-
- @Before
- public void setUp() throws Exception {
- super.setUp();
- svcClient.setScvOperation(SVC_OPERATION);
- }
-
- @Test
- public void vfModuleTopologyOperationInputIsNull() throws Exception {
- VfModuleTopologyOperationInput input = null;
- checkVfModuleTopologyOperation(input, "403", INVALID_VFMODULEID);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_VfModuleRequestInformationIsNull() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = new VfModuleTopologyOperationInputBuilder();
- builder.setVfModuleRequestInformation(null);
- VfModuleTopologyOperationInput input = builder.build();
- checkVfModuleTopologyOperation(input, "403", INVALID_VFMODULEID);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_getVfModuleRequestInformationVfModuleIdIsNull() throws Exception {
- RequestInformation reqInfo = createRequestInformation(RequestAction.PreloadVfModuleRequest);
- VfModuleRequestInformation vfModuleRequestInformation = createVfModuleRequestInformation(VNF_INSTANCE_ID, null);
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(vfModuleRequestInformation, reqInfo);
- VfModuleTopologyOperationInput input = builder.build();
- checkVfModuleTopologyOperation(input, "403", INVALID_VFMODULEID);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_VfModuleRequestInformationVfModuleIdIsZero() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID,""), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
- checkVfModuleTopologyOperation(input, "403", INVALID_VFMODULEID);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_getVfModuleRequestInformationVnfInstanceIdIsNull() throws Exception {
- RequestInformation reqInfo = createRequestInformation(RequestAction.PreloadVfModuleRequest);
- VfModuleRequestInformation vfModuleRequestInformation = createVfModuleRequestInformation(null, VF_MODULE_ID);
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(vfModuleRequestInformation, reqInfo);
- VfModuleTopologyOperationInput input = builder.build();
- checkVfModuleTopologyOperation(input, "403", INVALID_VNFINSTANCEID);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_VfModuleRequestInformationVnfInstanceIdIsZero() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation("",VF_MODULE_ID), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
- checkVfModuleTopologyOperation(input, "403", INVALID_VNFINSTANCEID);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_svcLogicClientHasGrapheReturnFalse() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
- setReturnForSvcLogicServiceClientHasGraph(false);
- checkVfModuleTopologyOperation(input, "503", NO_SERVICE_LOGIC);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_svcLogicClientExecuteThrowsSvcLogicException() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
- setReturnForSvcLogicServiceClientHasGraph(true);
- setMockVNFSDNSvcLogicServiceClientToThrowException(SvcLogicException.class);
- checkVfModuleTopologyOperation(input, "500", null);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_svcLogicClientExecuteThrowsException() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setMockVNFSDNSvcLogicServiceClientToThrowException(Exception.class);
- checkVfModuleTopologyOperation(input, "500", null);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_svcLogicClientExecuteReturnsNotNull() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- Properties properties = prop().set(ERROR_CODE, "500")
- .set(ERROR_MESSAGE, ERROR_MESSAGE)
- .set(ACK_FINAL, "Y")
- .build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setReturnForSvcLogicServiceClientExecute(properties);
- checkVfModuleTopologyOperation(input, "500", ERROR_MESSAGE);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_svcLogicClientExecuteReturnsNull() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setReturnForSvcLogicServiceClientExecute(null);
- String expectedErrorMsg = VfModuleDataBrokerErrorMsgConfigurator.JAVA_LANG_RUNTIME_EXCEPTION
- + VfModuleDataBrokerErrorMsgConfigurator.TRANSACTION_WRITE_ERROR;
- checkVfModuleTopologyOperation(input, "500", expectedErrorMsg);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_ActivateNoErrorDuringTransactionWriting() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.VfModuleActivateRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setReturnForSvcLogicServiceClientExecute(null);
- exceptionThrowerConfigurator.setShouldThrowExceptionDuringTransactionPut(false);
- checkVfModuleTopologyOperation(input, "200", null);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_ChangeNoErrorDuringTransactionWriting() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.ChangeVfModuleActivateRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setReturnForSvcLogicServiceClientExecute(null);
- exceptionThrowerConfigurator.setShouldThrowExceptionDuringTransactionPut(false);
- checkVfModuleTopologyOperation(input, "200", null);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_DisconnectNoErrorDuringTransactionWriting() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.DisconnectVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setReturnForSvcLogicServiceClientExecute(null);
- exceptionThrowerConfigurator.setShouldThrowExceptionDuringTransactionPut(false);
- checkVfModuleTopologyOperation(input, "200", null);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_PreloadNoErrorDuringTransactionWriting() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.PreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setReturnForSvcLogicServiceClientExecute(null);
- exceptionThrowerConfigurator.setShouldThrowExceptionDuringTransactionPut(false);
- checkVfModuleTopologyOperation(input, "200", null);
- }
-
- @Test
- public void vfModuleTopologyOperationInput_DeletePreloadNoErrorDuringTransactionWriting() throws Exception {
- VfModuleTopologyOperationInputBuilder builder = createVfModuleTopologyOperationInputBuilder(createVfModuleRequestInformation(VNF_INSTANCE_ID, VF_MODULE_ID), createRequestInformation(RequestAction.DeletePreloadVfModuleRequest));
- VfModuleTopologyOperationInput input = builder.build();
-
- setReturnForSvcLogicServiceClientHasGraph(true);
- setReturnForSvcLogicServiceClientExecute(null);
- exceptionThrowerConfigurator.setShouldThrowExceptionDuringTransactionPut(false);
- checkVfModuleTopologyOperation(input, "200", null);
- }
- private void checkVfModuleTopologyOperation(VfModuleTopologyOperationInput input,
- String expectedResponseCode, String expectedResponseMessage) throws ExecutionException, InterruptedException {
-
- VfModuleTopologyOperationOutput output = executeVfModuleTopologyOperation(input);
- checkVfModuleTopologyOperationOutput(output, expectedResponseCode, expectedResponseMessage);
- }
-
- private VfModuleTopologyOperationOutput executeVfModuleTopologyOperation(
- VfModuleTopologyOperationInput input) throws ExecutionException, InterruptedException {
- return vnfapiProvider
- .vfModuleTopologyOperation(input)
- .get()
- .getResult();
- }
-
- private void checkVfModuleTopologyOperationOutput(VfModuleTopologyOperationOutput result,
- String expectedResponseCode, String expectedResponseMessage) {
-
- String expectedAckFinalIndicator = "Y";
-
- Assert.assertEquals(expectedResponseCode , result.getResponseCode());
- Assert.assertEquals(expectedResponseMessage, result.getResponseMessage());
- Assert.assertEquals(expectedAckFinalIndicator, result.getAckFinalIndicator());
- }
-
- private void setReturnForSvcLogicServiceClientHasGraph(Boolean returnValue) throws Exception{
- Mockito.when(mockVNFSDNSvcLogicServiceClient
- .hasGraph(Mockito.any(),Mockito.any(), Mockito.any(),Mockito.any()))
- .thenReturn(returnValue);
- }
-
- private void setReturnForSvcLogicServiceClientExecute(Properties properties) throws Exception{
- Mockito.when(mockVNFSDNSvcLogicServiceClient
- .execute(Mockito.any(),
- Mockito.any(),
- Mockito.any(),
- Mockito.any(),
- Mockito.any(VfModuleServiceDataBuilder.class),
- Mockito.any()))
- .thenReturn(properties);
- }
-
- private void setMockVNFSDNSvcLogicServiceClientToThrowException(Class exceptionClass) throws Exception {
- Mockito.when(mockVNFSDNSvcLogicServiceClient
- .execute(Mockito.any(),
- Mockito.any(),
- Mockito.any(),
- Mockito.any(),
- Mockito.any(VfModuleServiceDataBuilder.class),
- Mockito.any()))
- .thenThrow(exceptionClass.asSubclass(Throwable.class));
- }
-
- private VfModuleTopologyOperationInputBuilder createVfModuleTopologyOperationInputBuilder(VfModuleRequestInformation vfModuleRequestInformation, RequestInformation reqInfo) {
- VfModuleTopologyOperationInputBuilder builder = new VfModuleTopologyOperationInputBuilder();
- builder.setVfModuleRequestInformation(vfModuleRequestInformation);
- builder.setRequestInformation(reqInfo);
- return builder;
- }
-
-
-
- private VfModuleRequestInformation createVfModuleRequestInformation(String vnfInstanceId, String vfModuleId) {
- return new VfModuleRequestInformationBuilder()
- .setVnfInstanceId(vnfInstanceId)
- .setVfModuleId(vfModuleId)
- .setVfModuleName(PRELOAD_NAME)
- .setVfModuleModelId(PRELOAD_TYPE)
- .build();
- }
-
- private RequestInformation createRequestInformation(RequestAction action) {
- return new RequestInformationBuilder()
- .setRequestAction(action)
- .build();
- }
-
-
-}