summaryrefslogtreecommitdiffstats
path: root/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java')
-rw-r--r--asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java1395
1 files changed, 0 insertions, 1395 deletions
diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java
deleted file mode 100644
index 903ffbaca7..0000000000
--- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java
+++ /dev/null
@@ -1,1395 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * 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.openecomp.sdc.ci.tests.execute.resource;
-
-import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS;
-import static org.testng.AssertJUnit.assertEquals;
-import static org.testng.AssertJUnit.assertFalse;
-import static org.testng.AssertJUnit.assertNotNull;
-import static org.testng.AssertJUnit.assertTrue;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.http.client.ClientProtocolException;
-import org.junit.rules.TestName;
-import org.openecomp.sdc.be.dao.api.ActionStatus;
-import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
-import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
-import org.openecomp.sdc.be.model.CapReqDef;
-import org.openecomp.sdc.be.model.CapabilityDefinition;
-import org.openecomp.sdc.be.model.CapabilityRequirementRelationship;
-import org.openecomp.sdc.be.model.ComponentInstance;
-import org.openecomp.sdc.be.model.RelationshipImpl;
-import org.openecomp.sdc.be.model.RelationshipInfo;
-import org.openecomp.sdc.be.model.RequirementCapabilityRelDef;
-import org.openecomp.sdc.be.model.RequirementDefinition;
-import org.openecomp.sdc.be.model.Resource;
-import org.openecomp.sdc.be.model.User;
-import org.openecomp.sdc.ci.tests.api.ComponentBaseTest;
-import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails;
-import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum;
-import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum;
-import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum;
-import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
-import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
-import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
-import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils;
-import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils;
-import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils;
-import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils;
-import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
-import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils;
-import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.Test;
-
-public class ComponentRelationshipInVfTest extends ComponentBaseTest {
-
- public ComponentRelationshipInVfTest() {
- super(new TestName(), ComponentRelationshipInVfTest.class.getName());
- }
-
- private ResourceReqDetails resourceDetailsVF;
- private User designerUser;
- private ResourceReqDetails resourceDetailsReq;
- private ResourceReqDetails resourceDetailsCap;
-
- @BeforeMethod
- public void before() throws Exception {
- designerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER);
-
- resourceDetailsVF = ElementFactory.getDefaultResourceByType("VF100", NormativeTypesEnum.ROOT,
- ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, designerUser.getUserId(), ResourceTypeEnum.VF.toString());
- createResource(resourceDetailsVF, designerUser);
-
- resourceDetailsReq = ElementFactory.getDefaultResourceByType("SoftCompRouter",
- NormativeTypesEnum.SOFTWARE_COMPONENT, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS,
- designerUser.getUserId(), ResourceTypeEnum.CP.toString()); // resourceType
- // =
- // VFC
- resourceDetailsCap = ElementFactory.getDefaultResourceByType("ciMyCompute", NormativeTypesEnum.COMPUTE,
- ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, designerUser.getUserId(), ResourceTypeEnum.CP.toString()); // resourceType
- // =
- // VFC
-
- }
-
- private void createResource(ResourceReqDetails resourceDetails, User user) throws Exception, IOException {
- RestResponse createResourceResponse = ResourceRestUtils.createResource(resourceDetails, user);
- ResourceRestUtils.checkCreateResponse(createResourceResponse);
- if (!resourceDetails.getResourceType().equals("VF"))
- LifecycleRestUtils.changeResourceState(resourceDetails, user, "0.1", LifeCycleStatesEnum.CHECKIN);
- }
-
- private void createAtomicResource(ResourceReqDetails resourceDetails, User user) throws Exception {
- createResource(resourceDetails, user);
- }
-
- private RequirementCapabilityRelDef setRelationshipBetweenInstances(ComponentInstance riReq,
- ComponentInstance riCap, CapReqDef capReqDef) throws Exception {
-
- String capbilityUid = capReqDef.getCapabilities().get("tosca.capabilities.Container").get(0).getUniqueId();
- String requirementUid = capReqDef.getRequirements().get("tosca.capabilities.Container").get(0).getUniqueId();
-
- RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef();
- requirementDef.setFromNode(riReq.getUniqueId());
- requirementDef.setToNode(riCap.getUniqueId());
-
- RelationshipInfo pair = new RelationshipInfo();
- pair.setRequirementOwnerId(riReq.getUniqueId());
- pair.setCapabilityOwnerId(riCap.getUniqueId());
- pair.setRequirement("host");
- RelationshipImpl relationship = new RelationshipImpl();
- relationship.setType("tosca.capabilities.Container");
- pair.setRelationships(relationship);
- pair.setCapabilityUid(capbilityUid);
- pair.setRequirementUid(requirementUid);
- List<CapabilityRequirementRelationship> relationships = new ArrayList<>();
- CapabilityRequirementRelationship capReqRel = new CapabilityRequirementRelationship();
- capReqRel.setRelation(pair);
- relationships.add(capReqRel);
- requirementDef.setRelationships(relationships);
- return requirementDef;
- }
-
- private ComponentInstance createComponentInstance(ResourceReqDetails res) throws Exception {
- return createComponentInstance(res, designerUser);
- }
-
- private ComponentInstance createComponentInstance(ResourceReqDetails res, User user, ResourceReqDetails vf)
- throws Exception {
- RestResponse response = ResourceRestUtils.createResourceInstance(res, user, vf.getUniqueId());
- ResourceRestUtils.checkCreateResponse(response);
- ComponentInstance compInstance = ResponseParser.parseToObject(response.getResponse(), ComponentInstance.class);
- return compInstance;
- }
-
- private ComponentInstance createComponentInstance(ResourceReqDetails res, User user) throws Exception {
- return createComponentInstance(res, user, resourceDetailsVF);
- }
-
- private void createTwoAtomicResourcesByType(String reqType, String capType, User user1, User user2)
- throws Exception {
- resourceDetailsReq.setResourceType(reqType);
- createAtomicResource(resourceDetailsReq, user1);
- resourceDetailsCap.setResourceType(capType);
- createAtomicResource(resourceDetailsCap, user2);
- }
-
- private void createTwoAtomicResourcesByType(String reqType, String capType) throws Exception {
- createTwoAtomicResourcesByType(reqType, capType, designerUser, designerUser);
- }
-
- @Test
- public void associateInVF() throws Exception {
-
- createTwoAtomicResourcesByType(ResourceTypeEnum.VFC.toString(), ResourceTypeEnum.VFC.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDef = getResourceReqCap();
-
- List<CapabilityDefinition> capList = capReqDef.getCapabilities().get("tosca.capabilities.Container");
- List<RequirementDefinition> reqList = capReqDef.getRequirements().get("tosca.capabilities.Container");
-
- RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef();
- requirementDef.setFromNode(riReq.getUniqueId());
- requirementDef.setToNode(riCap.getUniqueId());
-
- RelationshipInfo pair = new RelationshipInfo();
- pair.setRequirementOwnerId(riReq.getUniqueId());
- pair.setCapabilityOwnerId(riCap.getUniqueId());
- pair.setRequirement("host");
- RelationshipImpl relationship = new RelationshipImpl();
- relationship.setType("tosca.capabilities.Container");
- pair.setRelationships(relationship);
- pair.setCapabilityUid(capList.get(0).getUniqueId());
- pair.setRequirementUid(reqList.get(0).getUniqueId());
- List<CapabilityRequirementRelationship> relationships = new ArrayList<>();
- CapabilityRequirementRelationship capReqRel = new CapabilityRequirementRelationship();
- capReqRel.setRelation(pair);
- relationships.add(capReqRel);
- requirementDef.setRelationships(relationships);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
-
- RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(designerUser,
- resourceDetailsVF);
- capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class);
-
- List<RequirementDefinition> list = capReqDef.getRequirements().get("tosca.capabilities.Container");
- assertEquals("Check requirement", null, list);
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue());
-
- getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(designerUser, resourceDetailsVF);
- capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class);
-
- list = capReqDef.getRequirements().get("tosca.capabilities.Container");
- assertEquals("Check requirement", 1, list.size());
- }
-
- //////////////////////////////// Q A //////////////////////////////
- private boolean checkRealtionship(String fromNode, String toNode, String resourceUniqueId) throws Exception {
- List<RequirementCapabilityRelDef> componentInstancesRelations = getComponentInstancesRelations(
- resourceUniqueId);
- RequirementCapabilityRelDef requirementCapabilityRelDef = componentInstancesRelations.get(0);
- boolean fromNodeCheck = requirementCapabilityRelDef.getFromNode().equals(fromNode);
- boolean toNodeCheck = requirementCapabilityRelDef.getToNode().equals(toNode);
-
- return fromNodeCheck && toNodeCheck;
- }
-
- private List<RequirementCapabilityRelDef> getComponentInstancesRelations(String resourceUniqueId)
- throws ClientProtocolException, IOException {
- Resource resource = getVfAsResourceObject(resourceUniqueId);
- List<RequirementCapabilityRelDef> componenRelationInstances = resource.getComponentInstancesRelations();
-
- return componenRelationInstances;
- }
-
- private Resource getVfAsResourceObject(String resourceUniqueId) throws ClientProtocolException, IOException {
- RestResponse getResource = ResourceRestUtils.getResource(resourceUniqueId);
- Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class);
- return resource;
- }
-
- private List<ComponentInstance> getComponentInstancesList(String resourceUniqueId) throws Exception {
- Resource resource = getVfAsResourceObject(resourceUniqueId);
- List<ComponentInstance> componentInstances = resource.getComponentInstances();
- return componentInstances;
- }
-
- @Test
- public void associateCpToCpTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- CapReqDef capReqDef = getResourceReqCap();
-
- requirementsBeforeAssociate.remove("tosca.capabilities.Container");
- assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate));
-
- List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container");
- for (CapabilityDefinition cap : list) {
- cap.setMinOccurrences("0");
- }
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
- }
-
- private CapReqDef getResourceReqCap(ResourceReqDetails res) throws IOException {
- RestResponse getResourceBeforeAssociate = ComponentRestUtils.getComponentRequirmentsCapabilities(designerUser,
- resourceDetailsVF);
- CapReqDef capReqDef = ResponseParser.parseToObject(getResourceBeforeAssociate.getResponse(), CapReqDef.class);
- return capReqDef;
- }
-
- private CapReqDef getResourceReqCap() throws IOException {
- return getResourceReqCap(resourceDetailsVF);
- }
-
- @Test
- public void associateCpToVLTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- CapReqDef capReqDef = getResourceReqCap();
-
- requirementsBeforeAssociate.remove("tosca.capabilities.Container");
- assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate));
-
- List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container");
- for (CapabilityDefinition cap : list) {
- cap.setMinOccurrences("0");
- }
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
-
- }
-
- // Error handling
- // ELLA - more informative error
- @Test
- public void associateCpToVlInVFCTest() throws Exception {
- ResourceReqDetails vfcDetails = ElementFactory.getDefaultResourceByType("VFC100", NormativeTypesEnum.ROOT,
- ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, designerUser.getUserId(), ResourceTypeEnum.VFC.toString());
- RestResponse createVfcResponse = ResourceRestUtils.createResource(vfcDetails, designerUser);
- ResourceRestUtils.checkCreateResponse(createVfcResponse);
-
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- vfcDetails.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue());
-
- // "messageId": "SVC4116",
- // "text": "Error: Invalid Content.",
- // "variables": [
- // "SoftCompRouter 1",
- // "MyCompute 2",
- // "host"
- // ]
- }
-
- // Error handling
- @Test
- public void associateCpToVfTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- createComponentInstance(resourceDetailsCap, designerUser, resourceDetailsVF);
- createComponentInstance(resourceDetailsReq, designerUser, resourceDetailsVF);
-
- ResourceReqDetails vfHigh = new ResourceReqDetails(resourceDetailsVF, "0.1");
- vfHigh.setName("vfHigh");
- vfHigh.setTags(new ArrayList<String>(Arrays.asList(vfHigh.getName())));
- vfHigh.setResourceType(ResourceTypeEnum.VF.toString());
- createResource(vfHigh, designerUser);
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq, designerUser, vfHigh);
- LifecycleRestUtils.changeResourceState(resourceDetailsVF, designerUser, "0.1", LifeCycleStatesEnum.CHECKIN);
- ComponentInstance riCap = createComponentInstance(resourceDetailsVF, designerUser, vfHigh);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(),
- associateInstances.getResponse());
- // "messageId": "SVC4116",
- // "text": "Error: Invalid Content.",
- // "variables": [
- // "SoftCompRouter 1",
- // "VF100 2",
- // "host"
- // ]
- }
-
- // Error handling
- @Test
- public void associateVfcToVfcNotFoundTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.VFC.toString(), ResourceTypeEnum.VFC.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
- riCap.setUniqueId("123");
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_BAD_REQUEST.name(),
- new ArrayList<String>(), associateInstances.getResponse());
-
- // "messageId": "SVC4116",
- // "text": "Error: Invalid Content.",
- // "variables": [
- // "SoftCompRouter 1",
- // "012f6dcd-bcdf-4d9b-87be-ff1442b95831.5d265453-0b6a-4453-8f3d-57a253b88432.softcomprouter1",
- // "host"
- }
-
- @Test
- public void associateCpToDeletedVfcTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VFC.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(),
- designerUser.getUserId());
- ResourceRestUtils.checkDeleteResponse(deleteResourceResponse);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- }
-
- @Test
- public void associateCpToDeletedVlTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(),
- designerUser.getUserId());
- ResourceRestUtils.checkDeleteResponse(deleteResourceResponse);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- }
-
- @Test
- public void associateCpToDeletedCpTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(),
- designerUser.getUserId());
- ResourceRestUtils.checkDeleteResponse(deleteResourceResponse);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- }
-
- // Error handling
- @Test
- public void associateCpToDeletedCpInstanceTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse deleteComponentInstance = ComponentInstanceRestUtils.deleteComponentInstance(designerUser,
- resourceDetailsVF.getUniqueId(), riReq.getUniqueId(), ComponentTypeEnum.RESOURCE);
- ComponentInstanceRestUtils.checkDeleteResponse(deleteComponentInstance);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue());
-
- // "messageId": "SVC4116",
- // "text": "Error: Invalid Content.",
- // "variables": [
- // "7d6aca08-9321-4ea1-a781-c52c8214a30e.c0e63466-5283-44d8-adff-365c0885a6ba.softcomprouter1",
- // "MyCompute 2",
- // "host"
- // ]
- }
-
- // Error handling
- @Test
- public void associateVfcToDeletedVFCInstanceTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.VFC.toString(), ResourceTypeEnum.VFC.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse deleteComponentInstance = ComponentInstanceRestUtils.deleteComponentInstance(designerUser,
- resourceDetailsVF.getUniqueId(), riReq.getUniqueId(), ComponentTypeEnum.RESOURCE);
- ComponentInstanceRestUtils.checkDeleteResponse(deleteComponentInstance);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue());
-
- // "messageId": "SVC4116",
- // "text": "Error: Invalid Content.",
- // "variables": [
- // "7d6aca08-9321-4ea1-a781-c52c8214a30e.c0e63466-5283-44d8-adff-365c0885a6ba.softcomprouter1",
- // "MyCompute 2",
- // "host"
- // ]
- }
-
- @Test
- public void associateWithDifferentOwnerOfVf() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef,
- ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), resourceDetailsVF.getUniqueId(),
- ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(),
- associateInstances.getResponse());
-
- CapReqDef capReqDef = getResourceReqCap();
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsAfterAssociate = capReqDef.getRequirements();
-
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
- assertTrue(requirementsAfterAssociate.equals(requirementsBeforeAssociate));
- }
-
- @Test
- public void associateWithTester() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef,
- ElementFactory.getDefaultUser(UserRoleEnum.TESTER), resourceDetailsVF.getUniqueId(),
- ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(),
- associateInstances.getResponse());
-
- CapReqDef capReqDef = getResourceReqCap();
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsAfterAssociate = capReqDef.getRequirements();
-
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
- assertTrue(requirementsAfterAssociate.equals(requirementsBeforeAssociate));
- }
-
- // Error handling
- @Test
- public void associateCpToVLIntoVFNotFound() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- String uidNotFound = "123";
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- uidNotFound, ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 404, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(),
- new ArrayList<String>(Arrays.asList("")), associateInstances.getResponse());
-
- // {"serviceException":{"messageId":"SVC4063","text":"Error: Requested
- // '%1' resource was not found.","variables":[""]}}}
- }
-
- // Error Handling
- @Test
- public void associateCpToVlWithMissingUid() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- requirementDef.setToNode("");
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue());
- // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(),
- // new ArrayList<String>(), associateInstances.getResponse());
-
- // "messageId": "SVC4116",
- // "text": "Error: Invalid Content.",
- // "variables": [
- // "SoftCompRouter 1",
- // "fd3a689b-fa1c-4105-933d-d1310e642f05.95bce626-ce73-413b-8c14-2388d1589d5c.softcomprouter1",
- // "host"
- // ]
- }
-
- @Test
- public void associateInServiceWithUidOfVf() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.SERVICE);
- assertEquals("Check response code ", 404, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(),
- new ArrayList<String>(Arrays.asList("")), associateInstances.getResponse());
- }
-
- @Test
- public void associateCpToVl_DifferentOwners() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString(), designerUser,
- ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2));
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- CapReqDef capReqDef = getResourceReqCap();
-
- requirementsBeforeAssociate.remove("tosca.capabilities.Container");
- assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate));
-
- List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container");
- for (CapabilityDefinition cap : list) {
- cap.setMinOccurrences("0");
- }
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
- }
-
- @Test(enabled = false)
- public void associateToNotCheckedoutVf() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse changeResourceStateToCheckin = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKIN);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckin);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(),
- associateInstances.getResponse());
-
- CapReqDef capReqDef = getResourceReqCap();
- assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDef.getCapabilities().equals(capabilitiesBeforeAssociate));
-
- String firstUniqueId = resourceDetailsVF.getUniqueId();
-
- // checkout
-
- RestResponse changeResourceStateToCheckout = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKOUT);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout);
- String secondUniqueId = resourceDetailsVF.getUniqueId();
-
- CapReqDef capReqDefAfterFirstCheckout = getResourceReqCap();
- Map<String, List<CapabilityDefinition>> capabilitiesAfterFirstCheckout = capReqDefAfterFirstCheckout
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsAfterFirstCheckout = capReqDefAfterFirstCheckout
- .getRequirements();
-
- requirementDef = setUidsOfInstancesAfterLifecycleStateChange(riReq, riCap, capReqDefBeforeAssociate);
-
- RestResponse firstAssociateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef,
- designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, firstAssociateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- CapReqDef capReqDefAfterFirstAssociate = getResourceReqCap();
- Map<String, List<CapabilityDefinition>> capabilitiesAfterFirstAssociate = capReqDefAfterFirstAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsAfterFirstAssociate = capReqDefAfterFirstAssociate
- .getRequirements();
-
- requirementsAfterFirstCheckout.remove("tosca.capabilities.Container");
- assertTrue(requirementsAfterFirstAssociate.equals(requirementsAfterFirstCheckout));
- assertTrue(capabilitiesAfterFirstAssociate.equals(capabilitiesAfterFirstCheckout));
-
- resourceDetailsVF.setUniqueId(firstUniqueId);
- CapReqDef capReqDefOfFirstVersion = getResourceReqCap();
- Map<String, List<CapabilityDefinition>> capabilitiesOfFirstVersion = capReqDefOfFirstVersion.getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsOfFirstVersion = capReqDefOfFirstVersion.getRequirements();
-
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
- assertTrue(requirementsBeforeAssociate.equals(requirementsOfFirstVersion));
- assertTrue(capabilitiesBeforeAssociate.equals(capabilitiesOfFirstVersion));
-
- // checkin-checkout
- resourceDetailsVF.setUniqueId(secondUniqueId);
- RestResponse changeResourceStateToCheckin2 = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKIN);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckin2);
- RestResponse changeResourceStateToCheckout2 = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKOUT);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout2);
-
- List<RequirementCapabilityRelDef> componentInstancesRelations = getComponentInstancesRelations(
- resourceDetailsVF.getUniqueId());
- assertFalse(componentInstancesRelations.isEmpty());
- assertEquals(1, componentInstancesRelations.size());
- List<ComponentInstance> componentInstancesList = getComponentInstancesList(resourceDetailsVF.getUniqueId());
- for (ComponentInstance comp : componentInstancesList) {
- String instanceUid = comp.getUniqueId();
- assertTrue(checkNodesInRelations(instanceUid, componentInstancesRelations.get(0)));
- }
- assertEquals(2, componentInstancesList.size());
-
- }
-
- private RequirementCapabilityRelDef setUidsOfInstancesAfterLifecycleStateChange(ComponentInstance riReq,
- ComponentInstance riCap, CapReqDef capReqDefBeforeAssociate)
- throws ClientProtocolException, IOException, Exception {
- RequirementCapabilityRelDef requirementDef;
- // RestResponse getResourceResponse =
- // ResourceRestUtils.getResource(resourceDetailsVF.getUniqueId());
- // Resource resource_0_2 =
- // ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(),
- // Resource.class);
- // List<ComponentInstance> componentInstances =
- // resource_0_2.getComponentInstances();
- List<ComponentInstance> componentInstances = getComponentInstancesList(resourceDetailsVF.getUniqueId());
-
- for (ComponentInstance comp : componentInstances) {
- if (comp.getName().equals(riReq.getName())) {
- riReq.setUniqueId(comp.getUniqueId());
- } else if (comp.getName().equals(riCap.getName())) {
- riCap.setUniqueId(comp.getUniqueId());
- }
- }
- requirementDef = setRelationshipBetweenInstances(riReq, riCap, capReqDefBeforeAssociate);
- return requirementDef;
- }
-
- private boolean checkNodesInRelations(String instanceUid, RequirementCapabilityRelDef relation) {
- if (relation.getToNode().equals(instanceUid)) {
- return true;
- } else if (relation.getFromNode().equals(instanceUid)) {
- return true;
- } else {
- return false;
- }
- }
-
- @Test
- public void associateOneOfTwoCPsToVl_ThenDiscocciate() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
- ResourceReqDetails secondResourceDetailsReq = new ResourceReqDetails(resourceDetailsReq, "0.1");
- secondResourceDetailsReq.setName("secondCP");
- secondResourceDetailsReq.setTags(Arrays.asList(secondResourceDetailsReq.getName()));
- createAtomicResource(secondResourceDetailsReq, designerUser);
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riReq2 = createComponentInstance(secondResourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- CapReqDef capReqDef = getResourceReqCap();
-
- List<RequirementDefinition> expectedList = requirementsBeforeAssociate.get("tosca.capabilities.Container");
- for (RequirementDefinition req : expectedList) {
- if (req.getOwnerName().equals(riReq2.getName())) {
- expectedList = new ArrayList<RequirementDefinition>(Arrays.asList(req));
- break;
- }
- }
- requirementsBeforeAssociate.put("tosca.capabilities.Container", expectedList);
- assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate));
-
- List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container");
- for (CapabilityDefinition cap : list) {
- cap.setMinOccurrences("0");
- }
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
-
- // second relationship
-
- RequirementCapabilityRelDef secondRequirementDef = setRelationshipBetweenInstances(riReq2, riCap,
- capReqDefBeforeAssociate);
- RestResponse secondAssociateInstances = ComponentInstanceRestUtils.associateInstances(secondRequirementDef,
- designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, secondAssociateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(secondRequirementDef.getFromNode(), secondRequirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- CapReqDef capReqDefAfterSecondAssociation = getResourceReqCap();
-
- requirementsBeforeAssociate.remove("tosca.capabilities.Container");
- assertTrue(capReqDefAfterSecondAssociation.getRequirements().equals(requirementsBeforeAssociate));
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterSecondAssociate = capReqDefAfterSecondAssociation
- .getCapabilities();
- assertTrue(capabilitiesAfterSecondAssociate.equals(capabilitiesBeforeAssociate));
-
- // dissociate
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(secondRequirementDef,
- designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue());
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
-
- CapReqDef capReqDefAfterDissociation = getResourceReqCap();
- Map<String, List<CapabilityDefinition>> capabilitiesAfterDissociate = capReqDefAfterDissociation
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsAfterDissociate = capReqDefAfterDissociation
- .getRequirements();
-
- assertTrue(capabilitiesAfterDissociate.equals(capReqDef.getCapabilities()));
- requirementsBeforeAssociate.put("tosca.capabilities.Container", expectedList);
- assertTrue(requirementsAfterDissociate.equals(requirementsBeforeAssociate));
- }
-
- @Test
- public void associateNotCompitableCapAndReq() throws Exception {
- resourceDetailsReq = ElementFactory.getDefaultResourceByType("Database", NormativeTypesEnum.DATABASE,
- ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, designerUser.getUserId(), ResourceTypeEnum.CP.toString()); // resourceType
- // =
- // VFC
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- assertTrue(requirementDef.getRelationships().size() == 1);
- String requirement = requirementDef.getRelationships().get(0).getRelation().getRequirement();
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 404, associateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_MATCH_NOT_FOUND.name(),
- new ArrayList<String>(Arrays.asList(riReq.getName(), riCap.getName(), requirement)),
- associateInstances.getResponse());
-
- CapReqDef capReqDef = getResourceReqCap();
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsAfterAssociate = capReqDef.getRequirements();
-
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
- assertTrue(requirementsAfterAssociate.equals(requirementsBeforeAssociate));
-
- }
-
- @Test
- public void disassociateCpAndCpTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue());
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertEquals("Check requirement", 1, listOfRequierments.size());
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
- }
-
- @Test
- public void disassociateCpAndVfcTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VFC.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue());
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertEquals("Check requirement", 1, listOfRequierments.size());
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
- }
-
- @Test
- public void disassociateCpAndVLTest() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue());
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertEquals("Check requirement", 1, listOfRequierments.size());
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
- }
-
- // Error handliing
- // in the error should we get the unique id of instances instead of names
- @Test
- public void disassociateNotFoundAssociation() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
- String requirementName = requirementDef.getRelationships().get(0).getRelation().getRequirement();
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND.name(),
- new ArrayList<String>(Arrays.asList(riReq.getName(), riCap.getName(), requirementName)),
- dissociateInstances.getResponse());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertEquals("Check requirement", 1, listOfRequierments.size());
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
- }
-
- // Error handliing
- @Test
- public void disassociateRelationInVfNotFound() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- String uidNotFound = "123";
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- uidNotFound, ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(),
- new ArrayList<String>(Arrays.asList(uidNotFound)), dissociateInstances.getResponse());
-
- // "serviceException": {
- // "messageId": "SVC4063",
- // "text": "Error: Requested \u0027%1\u0027 resource was not found.",
- // "variables": [
- // ""
- // ]
- }
-
- @Test
- public void disassociateWithDifferentDesigner() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef,
- ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), resourceDetailsVF.getUniqueId(),
- ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 409, dissociateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(),
- dissociateInstances.getResponse());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertEquals("Check requirement", 1, listOfRequierments.size());
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
-
- }
-
- @Test
- public void disassociateWithTester() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef,
- ElementFactory.getDefaultUser(UserRoleEnum.TESTER), resourceDetailsVF.getUniqueId(),
- ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 409, dissociateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(),
- dissociateInstances.getResponse());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertNotNull("Requierment is null after disassociate with tester", listOfRequierments);
- assertEquals("Check requirement", 1, listOfRequierments.size());
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
- }
-
- @Test
- public void disassociateServiceWithUidOfVF() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VFC.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.SERVICE);
- assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(),
- new ArrayList<String>(Arrays.asList("")), dissociateInstances.getResponse());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertTrue(listOfRequierments == null);
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).size() != 0);
- }
-
- @Test
- public void disassociateWithEmptyVfUid() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- "", ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue());
-
- CapReqDef capReqDef = getResourceReqCap();
-
- requirementsBeforeAssociate.remove("tosca.capabilities.Container");
- assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate));
-
- List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container");
- for (CapabilityDefinition cap : list) {
- cap.setMinOccurrences("0");
- }
-
- Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities();
- assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate));
- }
-
- @Test
- public void disassociateOneComponentDeleted() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
-
- RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(),
- designerUser.getUserId());
- ResourceRestUtils.checkDeleteResponse(deleteResourceResponse);
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue());
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
-
- List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements()
- .get("tosca.capabilities.Container");
- assertEquals("Check requirement", 1, listOfRequierments.size());
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
- }
-
- @Test
- public void disassociateNotCheckedoutVf() throws Exception {
- createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString());
-
- ComponentInstance riReq = createComponentInstance(resourceDetailsReq);
- ComponentInstance riCap = createComponentInstance(resourceDetailsCap);
-
- CapReqDef capReqDefBeforeAssociate = getResourceReqCap();
- Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate
- .getCapabilities();
- Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate
- .getRequirements();
-
- RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap,
- capReqDefBeforeAssociate);
-
- RestResponse changeResourceStateToCheckin = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKIN);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckin);
-
- RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", 409, dissociateInstances.getErrorCode().intValue());
- ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(),
- dissociateInstances.getResponse());
-
- CapReqDef capReqDefAfterDissociate = getResourceReqCap();
- assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate));
- assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate));
-
- RestResponse changeResourceStateToCheckout = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKOUT);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout);
-
- requirementDef = setUidsOfInstancesAfterLifecycleStateChange(riReq, riCap, capReqDefBeforeAssociate);
-
- RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser,
- resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue());
- assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(),
- resourceDetailsVF.getUniqueId()));
-
- RestResponse secondDisociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef,
- designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE);
- assertEquals("Check response code ", STATUS_CODE_SUCCESS, secondDisociateInstances.getErrorCode().intValue());
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
-
- RestResponse changeResourceStateToCheckout2 = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKIN);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout2);
- RestResponse changeResourceStateToCheckout3 = LifecycleRestUtils.changeResourceState(resourceDetailsVF,
- designerUser, LifeCycleStatesEnum.CHECKOUT);
- LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout3);
-
- assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty());
-
- }
-
-}