diff options
Diffstat (limited to 'test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product')
11 files changed, 2528 insertions, 2576 deletions
diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ChangeServiceInstanceVersionTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ChangeServiceInstanceVersionTest.java index 6a4fa3ba55..99caea6863 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ChangeServiceInstanceVersionTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ChangeServiceInstanceVersionTest.java @@ -20,26 +20,11 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_MISSING_INFORMATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_NOT_FOUND; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS_DELETE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_UNSUPPORTED_ERROR; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.List; - import org.junit.Rule; 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.model.ComponentInstance; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Product; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; +import org.openecomp.sdc.be.model.*; import org.openecomp.sdc.ci.tests.api.ComponentInstanceBaseTest; import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; @@ -48,1431 +33,1432 @@ import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; 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.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils; -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.rest.ServiceRestUtils; +import org.openecomp.sdc.ci.tests.utils.rest.*; import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; +import java.util.ArrayList; +import java.util.List; + +import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.*; +import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertTrue; + public class ChangeServiceInstanceVersionTest extends ComponentInstanceBaseTest { - protected ArtifactReqDetails heatArtifactDetails; - public String firstVfInstanceUniqueId; - public String firstVfInstanceName; - public String secondVfInstanceUniqueId; - public String secoundVfInstanceName; - public String serviceInstanceToReplaceUniqueId; - public String expectedServiceName; - public String expectedPosX; - public String expectedPosY; - public String actualServiceInstanceName; - public String actualPosX; - public String actualPosY; + protected ArtifactReqDetails heatArtifactDetails; + public String firstVfInstanceUniqueId; + public String firstVfInstanceName; + public String secondVfInstanceUniqueId; + public String secoundVfInstanceName; + public String serviceInstanceToReplaceUniqueId; + public String expectedServiceName; + public String expectedPosX; + public String expectedPosY; + public String actualServiceInstanceName; + public String actualPosX; + public String actualPosY; - @Rule - public static TestName name = new TestName(); + @Rule + public static TestName name = new TestName(); - public ChangeServiceInstanceVersionTest() { - super(name, ChangeServiceInstanceVersionTest.class.getName()); - } + public ChangeServiceInstanceVersionTest() { + super(name, ChangeServiceInstanceVersionTest.class.getName()); + } - @BeforeMethod - public void before() throws Exception { - firstVfInstanceName = null; - secoundVfInstanceName = null; - firstVfInstanceUniqueId = null; - secondVfInstanceUniqueId = null; - serviceInstanceToReplaceUniqueId = null; - expectedServiceName = null; - expectedPosX = null; - expectedPosY = null; - actualServiceInstanceName = null; - actualPosX = null; - actualPosY = null; - init(); - createComponents(); - } + @BeforeMethod + public void before() throws Exception { + firstVfInstanceName = null; + secoundVfInstanceName = null; + firstVfInstanceUniqueId = null; + secondVfInstanceUniqueId = null; + serviceInstanceToReplaceUniqueId = null; + expectedServiceName = null; + expectedPosX = null; + expectedPosY = null; + actualServiceInstanceName = null; + actualPosX = null; + actualPosY = null; + init(); + createComponents(); + } - private void createComponents() throws Exception { - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - createAtomicResource(resourceDetailsVFC_01); - changeResourceStateToCertified(resourceDetailsVFC_01); - createAtomicResource(resourceDetailsCP_01); - changeResourceStateToCertified(resourceDetailsCP_01); - createAtomicResource(resourceDetailsVL_01); - changeResourceStateToCertified(resourceDetailsVL_01); - createAtomicResource(resourceDetailsVFC_02); - changeResourceStateToCertified(resourceDetailsVFC_02); - createAtomicResource(resourceDetailsCP_02); - changeResourceStateToCertified(resourceDetailsCP_02); - createAtomicResource(resourceDetailsVL_02); - changeResourceStateToCertified(resourceDetailsVL_02); - createVF(resourceDetailsVF_02); - createVF(resourceDetailsVF_01); - // create check-In services - createService(serviceDetails_01); - createService(serviceDetails_02); - createService(serviceDetails_03); - createProduct(productDetails_01); - createProduct(productDetails_02); + private void createComponents() throws Exception { + heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); + createAtomicResource(resourceDetailsVFC_01); + changeResourceStateToCertified(resourceDetailsVFC_01); + createAtomicResource(resourceDetailsCP_01); + changeResourceStateToCertified(resourceDetailsCP_01); + createAtomicResource(resourceDetailsVL_01); + changeResourceStateToCertified(resourceDetailsVL_01); + createAtomicResource(resourceDetailsVFC_02); + changeResourceStateToCertified(resourceDetailsVFC_02); + createAtomicResource(resourceDetailsCP_02); + changeResourceStateToCertified(resourceDetailsCP_02); + createAtomicResource(resourceDetailsVL_02); + changeResourceStateToCertified(resourceDetailsVL_02); + createVF(resourceDetailsVF_02); + createVF(resourceDetailsVF_01); + // create check-In services + createService(serviceDetails_01); + createService(serviceDetails_02); + createService(serviceDetails_03); + createProduct(productDetails_01); + createProduct(productDetails_02); - // add resourceDetailsCP_01 ,resourceDetailsVFC_01 and - // resourceDetailsCP_01 to resourceDetailsVF_01 and certify - // resourceDetailsVF_01 - certifyVf(resourceDetailsVF_01, resourceDetailsVFC_02, resourceDetailsCP_01); - // add resourceDetailsCP_02 ,resourceDetailsVFC_02 and - // resourceDetailsVL_02 to resourceDetailsVF_02 and certify - // resourceDetailsVF_02 - certifyVf(resourceDetailsVF_02, resourceDetailsVFC_02, resourceDetailsCP_02); - RestResponse createVFInstanceResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_01, - sdncDesignerDetails); // serviceDetails_01 has certified - // resourceDetailsVF_01 - firstVfInstanceName = ResponseParser.getNameFromResponse(createVFInstanceResponse); - createVFInstanceResponse = createVFInstanceDuringSetup(serviceDetails_02, resourceDetailsVF_02, - sdncDesignerDetails); // serviceDetails_01 has certified - // resourceDetailsVF_02 - secoundVfInstanceName = ResponseParser.getUniqueIdFromResponse(createVFInstanceResponse); - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_02, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - } + // add resourceDetailsCP_01 ,resourceDetailsVFC_01 and + // resourceDetailsCP_01 to resourceDetailsVF_01 and certify + // resourceDetailsVF_01 + certifyVf(resourceDetailsVF_01, resourceDetailsVFC_02, resourceDetailsCP_01); + // add resourceDetailsCP_02 ,resourceDetailsVFC_02 and + // resourceDetailsVL_02 to resourceDetailsVF_02 and certify + // resourceDetailsVF_02 + certifyVf(resourceDetailsVF_02, resourceDetailsVFC_02, resourceDetailsCP_02); + RestResponse createVFInstanceResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_01, + sdncDesignerDetails); // serviceDetails_01 has certified + // resourceDetailsVF_01 + firstVfInstanceName = ResponseParser.getNameFromResponse(createVFInstanceResponse); + createVFInstanceResponse = createVFInstanceDuringSetup(serviceDetails_02, resourceDetailsVF_02, + sdncDesignerDetails); // serviceDetails_01 has certified + // resourceDetailsVF_02 + secoundVfInstanceName = ResponseParser.getUniqueIdFromResponse(createVFInstanceResponse); + RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_02, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + } - @Test - public void changeServiceInstanceVersionByPm() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // get the new VF instance uniqueId after checkout service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); - for (ComponentInstance component : serviceComponentInstances) { - if (component.getName().equals(firstVfInstanceName)) { - firstVfInstanceUniqueId = component.getUniqueId(); - } - } - assertTrue(firstVfInstanceUniqueId != null); - // delete resource instance (resourceDetailsVF_01) from Service - RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, - serviceDetails_01, sdncDesignerDetails); - assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Add different VF instance (resourceDetailsVF_02) to Service - RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(restResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); - ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); - actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); - actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posX"); - actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posY"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Verify that Service instance name and position didn't change after - // changing service instance version - assertTrue(actualServiceInstanceName.equals(expectedServiceName)); - assertTrue(actualPosX.equals(expectedPosX)); - assertTrue(actualPosY.equals(expectedPosY)); - } + @Test + public void changeServiceInstanceVersionByPm() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // get the new VF instance uniqueId after checkout service + RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); + for (ComponentInstance component : serviceComponentInstances) { + if (component.getName().equals(firstVfInstanceName)) { + firstVfInstanceUniqueId = component.getUniqueId(); + } + } + assertTrue(firstVfInstanceUniqueId != null); + // delete resource instance (resourceDetailsVF_01) from Service + RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, + serviceDetails_01, sdncDesignerDetails); + assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Add different VF instance (resourceDetailsVF_02) to Service + RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(restResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); + ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); + actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); + actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posX"); + actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posY"); + ComponentInstance componentInstance = ResponseParser + .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Verify that Service instance name and position didn't change after + // changing service instance version + assertTrue(actualServiceInstanceName.equals(expectedServiceName)); + assertTrue(actualPosX.equals(expectedPosX)); + assertTrue(actualPosY.equals(expectedPosY)); + } - @Test - public void changeServiceInstanceVersionByAdmin() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // get the new VF instance uniqueId after checkout service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); - for (ComponentInstance component : serviceComponentInstances) { - if (component.getName().equals(firstVfInstanceName)) { - firstVfInstanceUniqueId = component.getUniqueId(); - } - } - assertTrue(firstVfInstanceUniqueId != null); - // delete resource instance (resourceDetailsVF_01) from Service - RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, - serviceDetails_01, sdncDesignerDetails); - assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Add different VF instance (resourceDetailsVF_02) to Service - RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(restResponse); - // service [0.2] state to CERTIFICATIONREQUEST - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ResourceRestUtils.checkSuccess(changeStatusResponse); - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, - LifeCycleStatesEnum.STARTCERTIFICATION); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncAdminDetails, ComponentTypeEnum.PRODUCT, - true); - ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); - actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); - actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posX"); - actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posY"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Verify that Service instance name and position didn't change after - // changing service instance version - assertTrue(actualServiceInstanceName.equals(expectedServiceName)); - assertTrue(actualPosX.equals(expectedPosX)); - assertTrue(actualPosY.equals(expectedPosY)); - } + @Test + public void changeServiceInstanceVersionByAdmin() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // get the new VF instance uniqueId after checkout service + RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); + for (ComponentInstance component : serviceComponentInstances) { + if (component.getName().equals(firstVfInstanceName)) { + firstVfInstanceUniqueId = component.getUniqueId(); + } + } + assertTrue(firstVfInstanceUniqueId != null); + // delete resource instance (resourceDetailsVF_01) from Service + RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, + serviceDetails_01, sdncDesignerDetails); + assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Add different VF instance (resourceDetailsVF_02) to Service + RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(restResponse); + // service [0.2] state to CERTIFICATIONREQUEST + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CERTIFICATIONREQUEST); + ResourceRestUtils.checkSuccess(changeStatusResponse); + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, + LifeCycleStatesEnum.STARTCERTIFICATION); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncAdminDetails, ComponentTypeEnum.PRODUCT, + true); + ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); + actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); + actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posX"); + actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posY"); + ComponentInstance componentInstance = ResponseParser + .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Verify that Service instance name and position didn't change after + // changing service instance version + assertTrue(actualServiceInstanceName.equals(expectedServiceName)); + assertTrue(actualPosX.equals(expectedPosX)); + assertTrue(actualPosY.equals(expectedPosY)); + } - @Test - public void changeServiceInstanceToOlderVersion() throws Exception { - // Get VF Instance UniquId [Service version 0.1] - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ComponentInstance actualComponentInstance = service.getComponentInstances().get(0); - firstVfInstanceUniqueId = actualComponentInstance.getUniqueId(); - String serviceOlderVersionUniquId = ResponseParser.getUniqueIdFromResponse(getServiceResponse); + @Test + public void changeServiceInstanceToOlderVersion() throws Exception { + // Get VF Instance UniquId [Service version 0.1] + RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + ComponentInstance actualComponentInstance = service.getComponentInstances().get(0); + firstVfInstanceUniqueId = actualComponentInstance.getUniqueId(); + String serviceOlderVersionUniquId = ResponseParser.getUniqueIdFromResponse(getServiceResponse); - // Checkout service [0.2] - RestResponse changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, - sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // get the new VF instance uniqueId after checkout service - getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); - for (ComponentInstance component : serviceComponentInstances) { - if (component.getName().equals(firstVfInstanceName)) { - firstVfInstanceUniqueId = component.getUniqueId(); - } - } - assertTrue(firstVfInstanceUniqueId != null); - // delete resource instance (resourceDetailsVF_01) from Service - RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, - serviceDetails_01, sdncDesignerDetails); - assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Add different VF instance (resourceDetailsVF_02) to Service - RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(restResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // Adding service instance (serviceDetails_01 V0.2) to product without - // saving Req&Cap - RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to Older version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceOlderVersionUniquId, sdncPmDetails1, ComponentTypeEnum.PRODUCT, - true); - // RestResponse changeServiceInstanceVersionResponse = - // changeServiceInstanceVersion(productDetails_01.getUniqueId(), - // serviceInstanceToReplaceUniqueId , serviceNewUniqueUid, - // sdncPmDetails1, ComponentTypeEnum.PRODUCT , true); - ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); - actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); - actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posX"); - actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posY"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Verify that Service instance name and position didn't change after - // changing service instance version - assertTrue(actualServiceInstanceName.equals(expectedServiceName)); - assertTrue(actualPosX.equals(expectedPosX)); - assertTrue(actualPosY.equals(expectedPosY)); - } + // Checkout service [0.2] + RestResponse changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, + sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // get the new VF instance uniqueId after checkout service + getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); + for (ComponentInstance component : serviceComponentInstances) { + if (component.getName().equals(firstVfInstanceName)) { + firstVfInstanceUniqueId = component.getUniqueId(); + } + } + assertTrue(firstVfInstanceUniqueId != null); + // delete resource instance (resourceDetailsVF_01) from Service + RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, + serviceDetails_01, sdncDesignerDetails); + assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Add different VF instance (resourceDetailsVF_02) to Service + RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(restResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // Adding service instance (serviceDetails_01 V0.2) to product without + // saving Req&Cap + RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to Older version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceOlderVersionUniquId, sdncPmDetails1, ComponentTypeEnum.PRODUCT, + true); + // RestResponse changeServiceInstanceVersionResponse = + // changeServiceInstanceVersion(productDetails_01.getUniqueId(), + // serviceInstanceToReplaceUniqueId , serviceNewUniqueUid, + // sdncPmDetails1, ComponentTypeEnum.PRODUCT , true); + ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); + actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); + actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posX"); + actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posY"); + ComponentInstance componentInstance = ResponseParser + .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Verify that Service instance name and position didn't change after + // changing service instance version + assertTrue(actualServiceInstanceName.equals(expectedServiceName)); + assertTrue(actualPosX.equals(expectedPosX)); + assertTrue(actualPosY.equals(expectedPosY)); + } - // DE190201 - @Test - public void changeServiceInstanceVersionToCertifiedVersion() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - /* + // DE190201 + @Test + public void changeServiceInstanceVersionToCertifiedVersion() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + /* * String serviceNewUniqueUid = * ResponseParser.getUniqueIdFromResponse(changeStatusResponse); * serviceDetails_01.setUniqueId(serviceNewUniqueUid); */ - // get the new VF instance uniqueId after checkout service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); - for (ComponentInstance component : serviceComponentInstances) { - if (component.getName().equals(firstVfInstanceName)) { - firstVfInstanceUniqueId = component.getUniqueId(); - } - } - assertTrue(firstVfInstanceUniqueId != null); - // delete resource instance (resourceDetailsVF_01) from Service - RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, - serviceDetails_01, sdncDesignerDetails); - assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Add different VF instance (resourceDetailsVF_02) to Service - RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(restResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ResourceRestUtils.checkSuccess(changeStatusResponse); - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, - LifeCycleStatesEnum.STARTCERTIFICATION); - ResourceRestUtils.checkSuccess(changeStatusResponse); - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, - LifeCycleStatesEnum.CERTIFY); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); - // RestResponse changeServiceInstanceVersionResponse = - // changeServiceInstanceVersion(productDetails_01.getUniqueId(), - // serviceInstanceToReplaceUniqueId , serviceNewUniqueUid, - // sdncPmDetails1, ComponentTypeEnum.PRODUCT , true); - ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); - actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); - actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posX"); - actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posY"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Verify that Service instance name and position didn't change after - // changing service instance version - assertTrue(actualServiceInstanceName.equals(expectedServiceName)); - assertTrue(actualPosX.equals(expectedPosX)); - assertTrue(actualPosY.equals(expectedPosY)); - } + // get the new VF instance uniqueId after checkout service + RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); + for (ComponentInstance component : serviceComponentInstances) { + if (component.getName().equals(firstVfInstanceName)) { + firstVfInstanceUniqueId = component.getUniqueId(); + } + } + assertTrue(firstVfInstanceUniqueId != null); + // delete resource instance (resourceDetailsVF_01) from Service + RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, + serviceDetails_01, sdncDesignerDetails); + assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Add different VF instance (resourceDetailsVF_02) to Service + RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(restResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CERTIFICATIONREQUEST); + ResourceRestUtils.checkSuccess(changeStatusResponse); + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, + LifeCycleStatesEnum.STARTCERTIFICATION); + ResourceRestUtils.checkSuccess(changeStatusResponse); + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, + LifeCycleStatesEnum.CERTIFY); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); + // RestResponse changeServiceInstanceVersionResponse = + // changeServiceInstanceVersion(productDetails_01.getUniqueId(), + // serviceInstanceToReplaceUniqueId , serviceNewUniqueUid, + // sdncPmDetails1, ComponentTypeEnum.PRODUCT , true); + ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); + actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); + actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posX"); + actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posY"); + ComponentInstance componentInstance = ResponseParser + .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Verify that Service instance name and position didn't change after + // changing service instance version + assertTrue(actualServiceInstanceName.equals(expectedServiceName)); + assertTrue(actualPosX.equals(expectedPosX)); + assertTrue(actualPosY.equals(expectedPosY)); + } - // DE191927 - @Test(enabled = false) - public void changeServiceInstanceVersionThenReCheckInProduct() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // get the new VF instance uniqueId after checkout service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); - for (ComponentInstance component : serviceComponentInstances) { - if (component.getName().equals(firstVfInstanceName)) { - firstVfInstanceUniqueId = component.getUniqueId(); - } - } - assertTrue(firstVfInstanceUniqueId != null); - // delete resource instance (resourceDetailsVF_01) from Service - RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, - serviceDetails_01, sdncDesignerDetails); - assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Add different VF instance (resourceDetailsVF_02) to Service - RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(restResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); - ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); - actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); - actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posX"); - actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posY"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - ///////////////////// - productOldUniqueId = productDetails_01.getUniqueId(); - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - ///////////////////////////////////////////// - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Verify that Service instance name and position didn't change after - // changing service instance version - assertTrue(actualServiceInstanceName.equals(expectedServiceName)); - assertTrue(actualPosX.equals(expectedPosX)); - assertTrue(actualPosY.equals(expectedPosY)); - } + // DE191927 + @Test(enabled = false) + public void changeServiceInstanceVersionThenReCheckInProduct() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // get the new VF instance uniqueId after checkout service + RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); + for (ComponentInstance component : serviceComponentInstances) { + if (component.getName().equals(firstVfInstanceName)) { + firstVfInstanceUniqueId = component.getUniqueId(); + } + } + assertTrue(firstVfInstanceUniqueId != null); + // delete resource instance (resourceDetailsVF_01) from Service + RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, + serviceDetails_01, sdncDesignerDetails); + assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Add different VF instance (resourceDetailsVF_02) to Service + RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(restResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); + ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); + actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); + actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posX"); + actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posY"); + ComponentInstance componentInstance = ResponseParser + .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + ///////////////////// + productOldUniqueId = productDetails_01.getUniqueId(); + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + ///////////////////////////////////////////// + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Verify that Service instance name and position didn't change after + // changing service instance version + assertTrue(actualServiceInstanceName.equals(expectedServiceName)); + assertTrue(actualPosX.equals(expectedPosX)); + assertTrue(actualPosY.equals(expectedPosY)); + } - @Test - public void changeServiceInstanceToHisVersion() throws Exception { - // Get VF Instance UniquId [Service version 0.1] - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - String serviceOlderVersionUniquId = ResponseParser.getUniqueIdFromResponse(getServiceResponse); - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // get the new VF instance uniqueId after checkout service - getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); - for (ComponentInstance component : serviceComponentInstances) { - if (component.getName().equals(firstVfInstanceName)) { - firstVfInstanceUniqueId = component.getUniqueId(); - } - } - assertTrue(firstVfInstanceUniqueId != null); - // delete resource instance (resourceDetailsVF_01) from Service - RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, - serviceDetails_01, sdncDesignerDetails); - assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Add different VF instance (resourceDetailsVF_02) to Service - RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(restResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceOlderVersionUniquId, sdncPmDetails1, ComponentTypeEnum.PRODUCT, - true); - // RestResponse changeServiceInstanceVersionResponse = - // changeServiceInstanceVersion(productDetails_01.getUniqueId(), - // serviceInstanceToReplaceUniqueId , serviceNewUniqueUid, - // sdncPmDetails1, ComponentTypeEnum.PRODUCT , true); - ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); - actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); - actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posX"); - actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posY"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Verify that Service instance name and position didn't change after - // changing service instance version - assertTrue(actualServiceInstanceName.equals(expectedServiceName)); - assertTrue(actualPosX.equals(expectedPosX)); - assertTrue(actualPosY.equals(expectedPosY)); - } + @Test + public void changeServiceInstanceToHisVersion() throws Exception { + // Get VF Instance UniquId [Service version 0.1] + RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + String serviceOlderVersionUniquId = ResponseParser.getUniqueIdFromResponse(getServiceResponse); + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // get the new VF instance uniqueId after checkout service + getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); + for (ComponentInstance component : serviceComponentInstances) { + if (component.getName().equals(firstVfInstanceName)) { + firstVfInstanceUniqueId = component.getUniqueId(); + } + } + assertTrue(firstVfInstanceUniqueId != null); + // delete resource instance (resourceDetailsVF_01) from Service + RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, + serviceDetails_01, sdncDesignerDetails); + assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Add different VF instance (resourceDetailsVF_02) to Service + RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(restResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceOlderVersionUniquId, sdncPmDetails1, ComponentTypeEnum.PRODUCT, + true); + // RestResponse changeServiceInstanceVersionResponse = + // changeServiceInstanceVersion(productDetails_01.getUniqueId(), + // serviceInstanceToReplaceUniqueId , serviceNewUniqueUid, + // sdncPmDetails1, ComponentTypeEnum.PRODUCT , true); + ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); + actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); + actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posX"); + actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posY"); + ComponentInstance componentInstance = ResponseParser + .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Verify that Service instance name and position didn't change after + // changing service instance version + assertTrue(actualServiceInstanceName.equals(expectedServiceName)); + assertTrue(actualPosX.equals(expectedPosX)); + assertTrue(actualPosY.equals(expectedPosY)); + } - @Test - public void changeServiceInstanceVersionByAdminNotByProductOwner() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + @Test + public void changeServiceInstanceVersionByAdminNotByProductOwner() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncAdminDetails, ComponentTypeEnum.PRODUCT, - true); - assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeServiceInstanceVersionResponse.getResponse()); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncAdminDetails, ComponentTypeEnum.PRODUCT, + true); + assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), + changeServiceInstanceVersionResponse.getResponse()); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); - } + } - @Test - public void changeServiceInstanceVersionByPmNotByProductOwner() throws Exception { - // Adding service instance (serviceDetails_01) to product AND ---> - // saving Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // change uniqueId after product check-out in expected Req&Cap - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - updateNewComponentInstanceId(createServiceInstanceResp, productNewUniqueId); - // CHANGE Service Instance VERSION BY NON PRODUCT OWNER (sdncPmDetails1 - // instead sdncPmDetails1) - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion( - productDetails_01.getUniqueId(), serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails2, - ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeServiceInstanceVersionResponse.getResponse()); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceVersionByPmNotByProductOwner() throws Exception { + // Adding service instance (serviceDetails_01) to product AND ---> + // saving Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // change uniqueId after product check-out in expected Req&Cap + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + updateNewComponentInstanceId(createServiceInstanceResp, productNewUniqueId); + // CHANGE Service Instance VERSION BY NON PRODUCT OWNER (sdncPmDetails1 + // instead sdncPmDetails1) + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion( + productDetails_01.getUniqueId(), serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails2, + ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), + changeServiceInstanceVersionResponse.getResponse()); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - @Test - public void changeServiceInstanceVersionByTester() throws Exception { - // Adding service instance (serviceDetails_01) to product AND ---> - // saving Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceToReplaceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // change uniqueId after product check-out in expected Req&Cap - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // CHANGE Service Instance VERSION BY NON PRODUCT OWNER (sdncPmDetails1 - // instead sdncPmDetails1) - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion( - productDetails_01.getUniqueId(), serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, - sdncTesterDetails, ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeServiceInstanceVersionResponse.getResponse()); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceVersionByTester() throws Exception { + // Adding service instance (serviceDetails_01) to product AND ---> + // saving Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceToReplaceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // change uniqueId after product check-out in expected Req&Cap + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // CHANGE Service Instance VERSION BY NON PRODUCT OWNER (sdncPmDetails1 + // instead sdncPmDetails1) + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion( + productDetails_01.getUniqueId(), serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, + sdncTesterDetails, ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), + changeServiceInstanceVersionResponse.getResponse()); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - @Test - public void changeServiceInstanceVersionProductIsNotCheckOut() throws Exception { - // Adding service instance (serviceDetails_01) to product AND ---> - // saving Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceToReplaceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // CHANGE Service Instance VERSION for Non checkedOut product - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productOldUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeServiceInstanceVersionResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceVersionProductIsNotCheckOut() throws Exception { + // Adding service instance (serviceDetails_01) to product AND ---> + // saving Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceToReplaceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // CHANGE Service Instance VERSION for Non checkedOut product + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productOldUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), + changeServiceInstanceVersionResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - // DE191727 - @Test(enabled = false) - public void changeServiceInstanceVersionServiceIsInCheckOutState() throws Exception { - // Adding service instance (serviceDetails_01) to product AND ---> - // saving Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceToReplaceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // change uniqueId after product check-out in expected Req&Cap - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // CHANGE Service Instance VERSION to service in checkOut state - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion( - productDetails_01.getUniqueId(), serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, - ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(serviceNewUniqueUid); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), varibales, - changeServiceInstanceVersionResponse.getResponse()); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); + // DE191727 + @Test(enabled = false) + public void changeServiceInstanceVersionServiceIsInCheckOutState() throws Exception { + // Adding service instance (serviceDetails_01) to product AND ---> + // saving Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceToReplaceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // change uniqueId after product check-out in expected Req&Cap + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // CHANGE Service Instance VERSION to service in checkOut state + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion( + productDetails_01.getUniqueId(), serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, + ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(serviceNewUniqueUid); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), varibales, + changeServiceInstanceVersionResponse.getResponse()); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); - } + } - @Test - public void changeServiceInstanceVersionServiceInstanceDoesNotExist() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // change service instance to newer version - String serviceUniqueUidNotExist = "1234567890"; - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceUniqueUidNotExist, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(serviceUniqueUidNotExist); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_NOT_FOUND.name(), varibales, - changeServiceInstanceVersionResponse.getResponse()); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceVersionServiceInstanceDoesNotExist() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // change service instance to newer version + String serviceUniqueUidNotExist = "1234567890"; + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceUniqueUidNotExist, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(serviceUniqueUidNotExist); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_NOT_FOUND.name(), varibales, + changeServiceInstanceVersionResponse.getResponse()); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - // DE189392 - @Test(enabled = false) - public void changeServiceInstanceNonExistingProduct() throws Exception { - // Adding service instance (serviceDetails_01) to product saving Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // change service instance to newer version - Non existing Product - String productNewUniqueIdNotExist = "1234567890"; - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueIdNotExist, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(productNewUniqueIdNotExist); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_NOT_FOUND.name(), varibales, - changeServiceInstanceVersionResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + // DE189392 + @Test(enabled = false) + public void changeServiceInstanceNonExistingProduct() throws Exception { + // Adding service instance (serviceDetails_01) to product saving Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // change service instance to newer version - Non existing Product + String productNewUniqueIdNotExist = "1234567890"; + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueIdNotExist, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(productNewUniqueIdNotExist); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_NOT_FOUND.name(), varibales, + changeServiceInstanceVersionResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - @Test - public void changeServiceInstanceVersionToNonExisitingServiceVersion() throws Exception { - // Adding service instance (serviceDetails_01) to product saving Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - updateNewComponentInstanceId(createServiceInstanceResp, productNewUniqueId); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // change service instance to Non-existing version - String serviceUniqueUidNotExist = "1234567890"; - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceUniqueUidNotExist, sdncPmDetails1, ComponentTypeEnum.PRODUCT, - true); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(serviceUniqueUidNotExist); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), varibales, - changeServiceInstanceVersionResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceVersionToNonExisitingServiceVersion() throws Exception { + // Adding service instance (serviceDetails_01) to product saving Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + updateNewComponentInstanceId(createServiceInstanceResp, productNewUniqueId); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // change service instance to Non-existing version + String serviceUniqueUidNotExist = "1234567890"; + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceUniqueUidNotExist, sdncPmDetails1, ComponentTypeEnum.PRODUCT, + true); + assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(serviceUniqueUidNotExist); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), varibales, + changeServiceInstanceVersionResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - @Test - public void changeServiceInstanceComponentTypeIsNotProduct() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version for NON-Component Type = - // Product (e.g. service) - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.SERVICE, true); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), varibales, - changeServiceInstanceVersionResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceComponentTypeIsNotProduct() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version for NON-Component Type = + // Product (e.g. service) + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.SERVICE, true); + assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(""); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), varibales, + changeServiceInstanceVersionResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - @Test - public void changeServiceInstanceComponentTypeNotSupported() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version for NON-Component Type = - // Product (e.g. service) - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, - ComponentTypeEnum.SERVICE_INSTANCE, true); - assertEquals("Check response code ", STATUS_CODE_UNSUPPORTED_ERROR, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("null"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.UNSUPPORTED_ERROR.name(), varibales, - changeServiceInstanceVersionResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceComponentTypeNotSupported() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version for NON-Component Type = + // Product (e.g. service) + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, + ComponentTypeEnum.SERVICE_INSTANCE, true); + assertEquals("Check response code ", STATUS_CODE_UNSUPPORTED_ERROR, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("null"); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.UNSUPPORTED_ERROR.name(), varibales, + changeServiceInstanceVersionResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - @Test - public void SeveralServiceInstanceFromSameServiceVersionChangeVersionOnlyForOneServiceInstance() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - serviceDetails_01.setUniqueId(serviceNewUniqueUid); - // get the new VF instance uniqueId after checkout service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); - for (ComponentInstance component : serviceComponentInstances) { - if (component.getName().equals(firstVfInstanceName)) { - firstVfInstanceUniqueId = component.getUniqueId(); - } - } - assertTrue(firstVfInstanceUniqueId != null); - // delete resource instance (resourceDetailsVF_01) from Service - RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, - serviceDetails_01, sdncDesignerDetails); - assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Add different VF instance (resourceDetailsVF_02) to Service - RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(restResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get service instance new uniqueId , name and position after checkout - // product - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); - ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); - actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); - actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posX"); - actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), - "posY"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Verify that Service instance name and position didn't change after - // changing service instance version - assertTrue(actualServiceInstanceName.equals(expectedServiceName)); - assertTrue(actualPosX.equals(expectedPosX)); - assertTrue(actualPosY.equals(expectedPosY)); - } + @Test + public void SeveralServiceInstanceFromSameServiceVersionChangeVersionOnlyForOneServiceInstance() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstanceDuringSetup(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + serviceDetails_01.setUniqueId(serviceNewUniqueUid); + // get the new VF instance uniqueId after checkout service + RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01.getUniqueId(), sdncPmDetails1); + Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); + List<ComponentInstance> serviceComponentInstances = service.getComponentInstances(); + for (ComponentInstance component : serviceComponentInstances) { + if (component.getName().equals(firstVfInstanceName)) { + firstVfInstanceUniqueId = component.getUniqueId(); + } + } + assertTrue(firstVfInstanceUniqueId != null); + // delete resource instance (resourceDetailsVF_01) from Service + RestResponse deleteVfFromServiceResponse = deleteVFInstanceDuringSetup(firstVfInstanceUniqueId, + serviceDetails_01, sdncDesignerDetails); + assertTrue(deleteVfFromServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Add different VF instance (resourceDetailsVF_02) to Service + RestResponse restResponse = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_02, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(restResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get service instance new uniqueId , name and position after checkout + // product + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, sdncPmDetails1, ComponentTypeEnum.PRODUCT, true); + ProductRestUtils.checkSuccess(changeServiceInstanceVersionResponse); + actualServiceInstanceName = ResponseParser.getNameFromResponse(changeServiceInstanceVersionResponse); + actualPosX = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posX"); + actualPosY = ResponseParser.getValueFromJsonResponse(changeServiceInstanceVersionResponse.getResponse(), + "posY"); + ComponentInstance componentInstance = ResponseParser + .parseToObjectUsingMapper(changeServiceInstanceVersionResponse.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Verify that Service instance name and position didn't change after + // changing service instance version + assertTrue(actualServiceInstanceName.equals(expectedServiceName)); + assertTrue(actualPosX.equals(expectedPosX)); + assertTrue(actualPosY.equals(expectedPosY)); + } - @Test - public void changeServiceInstanceVersionByNonAsdcUser() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - User nonAsdcUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - nonAsdcUser.setUserId("bt760h"); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, nonAsdcUser, ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeServiceInstanceVersionResponse.getResponse()); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceVersionByNonAsdcUser() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + User nonAsdcUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); + nonAsdcUser.setUserId("bt760h"); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, nonAsdcUser, ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), + changeServiceInstanceVersionResponse.getResponse()); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - @Test - public void changeServiceInstanceVersionEmptyUserId() throws Exception { - // Adding service instance (serviceDetails_01) to product without saving - // Req&Cap - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, - sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Adding service instance (serviceDetails_02) to product AND ---> Save - // Req&Cap - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // check-in product - RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Checkout service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(changeStatusResponse); - String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - // Check-In service [0.2] - changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(changeStatusResponse); - // check-out product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKOUT); - ProductRestUtils.checkSuccess(changeStatusResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - User nonAsdcUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - nonAsdcUser.setUserId(""); - // change service instance to newer version - RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, - serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, nonAsdcUser, ComponentTypeEnum.PRODUCT, true); - assertEquals("Check response code ", STATUS_CODE_MISSING_INFORMATION, - changeServiceInstanceVersionResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), new ArrayList<String>(), - changeServiceInstanceVersionResponse.getResponse()); - // Check-in product - changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, - LifeCycleStatesEnum.CHECKIN); - ProductRestUtils.checkSuccess(changeStatusResponse); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } + @Test + public void changeServiceInstanceVersionEmptyUserId() throws Exception { + // Adding service instance (serviceDetails_01) to product without saving + // Req&Cap + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, + sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Adding service instance (serviceDetails_02) to product AND ---> Save + // Req&Cap + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // check-in product + RestResponse changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productOldUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Checkout service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(changeStatusResponse); + String serviceNewUniqueUid = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + // Check-In service [0.2] + changeStatusResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(changeStatusResponse); + // check-out product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKOUT); + ProductRestUtils.checkSuccess(changeStatusResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(changeStatusResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + User nonAsdcUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); + nonAsdcUser.setUserId(""); + // change service instance to newer version + RestResponse changeServiceInstanceVersionResponse = changeServiceInstanceVersion(productNewUniqueId, + serviceInstanceToReplaceUniqueId, serviceNewUniqueUid, nonAsdcUser, ComponentTypeEnum.PRODUCT, true); + assertEquals("Check response code ", STATUS_CODE_MISSING_INFORMATION, + changeServiceInstanceVersionResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), new ArrayList<String>(), + changeServiceInstanceVersionResponse.getResponse()); + // Check-in product + changeStatusResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, + LifeCycleStatesEnum.CHECKIN); + ProductRestUtils.checkSuccess(changeStatusResponse); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } - //////////////////////////////////// - private void updateNewComponentInstanceId(RestResponse createServiceInstanceResp, String productNewUniqueId) - throws Exception { - String firstServiceInstanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); - Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); - List<ComponentInstance> componentInstances = product.getComponentInstances(); - for (ComponentInstance component : componentInstances) { - if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { - serviceInstanceToReplaceUniqueId = component.getUniqueId(); - expectedServiceName = component.getName(); - expectedPosX = component.getPosX(); - expectedPosY = component.getPosY(); - } - } - assertTrue(serviceInstanceToReplaceUniqueId != null); - } + //////////////////////////////////// + private void updateNewComponentInstanceId(RestResponse createServiceInstanceResp, String productNewUniqueId) + throws Exception { + String firstServiceInstanceNormalizedName = ResponseParser + .getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + RestResponse getProductResponse = ProductRestUtils.getProduct(productNewUniqueId, sdncPmDetails1.getUserId()); + Product product = ResponseParser.parseToObjectUsingMapper(getProductResponse.getResponse(), Product.class); + List<ComponentInstance> componentInstances = product.getComponentInstances(); + for (ComponentInstance component : componentInstances) { + if (component.getNormalizedName().equals(firstServiceInstanceNormalizedName)) { + serviceInstanceToReplaceUniqueId = component.getUniqueId(); + expectedServiceName = component.getName(); + expectedPosX = component.getPosX(); + expectedPosY = component.getPosY(); + } + } + assertTrue(serviceInstanceToReplaceUniqueId != null); + } - private RestResponse changeResourceStateToCertified(ResourceReqDetails resourceDetails) throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, + private RestResponse changeResourceStateToCertified(ResourceReqDetails resourceDetails) throws Exception { + RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, + LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + /*restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST); if (restResponse.getErrorCode() == 200) { restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterDetails, LifeCycleStatesEnum.STARTCERTIFICATION); } else return restResponse; - if (restResponse.getErrorCode() == 200) { - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterDetails, - LifeCycleStatesEnum.CERTIFY); - if (restResponse.getErrorCode() == 200) { - String newVersion = ResponseParser.getVersionFromResponse(restResponse); - resourceDetails.setVersion(newVersion); - resourceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED); - resourceDetails.setLastUpdaterUserId(sdncTesterDetails.getUserId()); - resourceDetails.setLastUpdaterFullName(sdncTesterDetails.getFullName()); - String uniqueIdFromRresponse = ResponseParser.getValueFromJsonResponse(restResponse.getResponse(), - "uniqueId"); - resourceDetails.setUniqueId(uniqueIdFromRresponse); - } - } - return restResponse; - } + if (restResponse.getErrorCode() == 200) {*/ + restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, + LifeCycleStatesEnum.CERTIFY); + if (restResponse.getErrorCode() == 200) { + String newVersion = ResponseParser.getVersionFromResponse(restResponse); + resourceDetails.setVersion(newVersion); + resourceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED); + resourceDetails.setLastUpdaterUserId(sdncTesterDetails.getUserId()); + resourceDetails.setLastUpdaterFullName(sdncTesterDetails.getFullName()); + String uniqueIdFromRresponse = ResponseParser.getValueFromJsonResponse(restResponse.getResponse(), + "uniqueId"); + resourceDetails.setUniqueId(uniqueIdFromRresponse); + } + return restResponse; + } - private void certifyVf(ResourceReqDetails resource, ResourceReqDetails computeResource, - ResourceReqDetails cpResource) throws Exception { - RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, cpResource, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); + private void certifyVf(ResourceReqDetails resource, ResourceReqDetails computeResource, + ResourceReqDetails cpResource) throws Exception { + RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, cpResource, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, computeResource, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); + createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, computeResource, + sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + String toCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, - sdncDesignerDetails, resource.getUniqueId()); - ResourceRestUtils.checkSuccess(response); + RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, + sdncDesignerDetails, resource.getUniqueId()); + ResourceRestUtils.checkSuccess(response); - String capOwnerId = toCompInstId; - User user = sdncDesignerDetails; - ComponentTypeEnum containerCompType = ComponentTypeEnum.RESOURCE; + String capOwnerId = toCompInstId; + User user = sdncDesignerDetails; + ComponentTypeEnum containerCompType = ComponentTypeEnum.RESOURCE; - fulfillCpRequirement(resource, fromCompInstId, toCompInstId, capOwnerId, user, containerCompType); + fulfillCpRequirement(resource, fromCompInstId, toCompInstId, capOwnerId, user, containerCompType); - RestResponse changeResourceStateToCertified = changeResourceStateToCertified(resource); - ResourceRestUtils.checkSuccess(changeResourceStateToCertified); - } + RestResponse changeResourceStateToCertified = changeResourceStateToCertified(resource); + ResourceRestUtils.checkSuccess(changeResourceStateToCertified); + } } diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductBaseTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductBaseTest.java index 623b29b8e6..1e1a197e40 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductBaseTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductBaseTest.java @@ -20,12 +20,8 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.PRODUCT_COMPONENT_TYPE; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; import org.junit.rules.TestName; import org.openecomp.sdc.be.model.User; import org.openecomp.sdc.be.model.category.CategoryDefinition; @@ -40,8 +36,11 @@ import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils; import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; import org.testng.annotations.BeforeMethod; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.PRODUCT_COMPONENT_TYPE; public abstract class ProductBaseTest extends ComponentBaseTest { User productStrategistUser1; diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckinTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckinTest.java index 1820315841..94027bd6eb 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckinTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckinTest.java @@ -20,8 +20,6 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.testng.AssertJUnit.assertEquals; - import org.junit.Rule; import org.junit.rules.TestName; import org.openecomp.sdc.be.dao.api.ActionStatus; @@ -42,6 +40,8 @@ import org.openecomp.sdc.common.api.Constants; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; +import static org.testng.AssertJUnit.assertEquals; + public class ProductCheckinTest extends ProductLifecycleTest { @Rule diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckoutTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckoutTest.java index ec1f7ad38d..36458d09f9 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckoutTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCheckoutTest.java @@ -20,10 +20,6 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.testng.AssertJUnit.assertEquals; - -import java.io.FileNotFoundException; - import org.junit.Rule; import org.junit.rules.TestName; import org.openecomp.sdc.be.dao.api.ActionStatus; @@ -43,6 +39,10 @@ import org.openecomp.sdc.ci.tests.utils.validation.ProductValidationUtils; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; +import java.io.FileNotFoundException; + +import static org.testng.AssertJUnit.assertEquals; + public class ProductCheckoutTest extends ProductLifecycleTest { @Rule diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductComponentInstanceCRUDTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductComponentInstanceCRUDTest.java index 596825875d..f9ce315ebf 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductComponentInstanceCRUDTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductComponentInstanceCRUDTest.java @@ -20,20 +20,6 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_ALREADY_EXISTS; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_COMPONENT_NAME_EXCEEDS_LIMIT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_INVALID_CONTENT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_MISSING_INFORMATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_NOT_FOUND; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS_DELETE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_UNSUPPORTED_ERROR; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.List; - import org.junit.Rule; import org.junit.rules.TestName; import org.openecomp.sdc.be.dao.api.ActionStatus; @@ -52,1124 +38,1124 @@ import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; 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.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils; -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.rest.ServiceRestUtils; +import org.openecomp.sdc.ci.tests.utils.rest.*; import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; import org.testng.AssertJUnit; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; +import java.util.ArrayList; +import java.util.List; + +import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.*; +import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertTrue; + public class ProductComponentInstanceCRUDTest extends ComponentInstanceBaseTest { - protected ArtifactReqDetails heatArtifactDetails; - @Rule - public static TestName name = new TestName(); - - public ProductComponentInstanceCRUDTest() { - super(name, ProductComponentInstanceCRUDTest.class.getName()); - } - - @BeforeMethod - public void before() throws Exception { - init(); - createComponents(); - } - - private void createComponents() throws Exception { - - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - createAtomicResource(resourceDetailsVFC_01); - changeResourceStateToCertified(resourceDetailsVFC_01); - createAtomicResource(resourceDetailsCP_01); - changeResourceStateToCertified(resourceDetailsCP_01); - createAtomicResource(resourceDetailsVL_01); - changeResourceStateToCertified(resourceDetailsVL_01); - createAtomicResource(resourceDetailsVFC_02); - changeResourceStateToCertified(resourceDetailsVFC_02); - createAtomicResource(resourceDetailsCP_02); - changeResourceStateToCertified(resourceDetailsCP_02); - createAtomicResource(resourceDetailsVL_02); - changeResourceStateToCertified(resourceDetailsVL_02); - createVF(resourceDetailsVF_02); - createVF(resourceDetailsVF_01); - // create check-In services - createService(serviceDetails_01); - createService(serviceDetails_02); - createService(serviceDetails_03); - createProduct(productDetails_01); - createProduct(productDetails_02); - - // addresourceDetailsCP_02 ,resourceDetailsVFC_02 and - // resourceDetailsVL_02 to resourceDetailsVF_02 check-in VF - RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsVFC_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsCP_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsVL_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - resourceDetailsVF_02.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); - // addresourceDetailsCP_01 ,resourceDetailsVFC_01 and - // resourceDetailsVL_01 to resourceDetailsVF_01 and certify - // resourceDetailsVF_01 - certifyVf(resourceDetailsVF_01); - createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); // serviceDetails_01 - // has - // certified - // VF - createVFInstanceDuringSetup(serviceDetails_02, resourceDetailsVF_02, sdncDesignerDetails); // serviceDetails_02 - // has - // check-in - // VF - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_02, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - } - - // pass - @Test - public void createServiceInstanceTest() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - // DE189427 - @Test(enabled = false) - public void createServiceInstanceFromCheckedOutState() throws Exception { - // can't create instance of checked-out component - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceInToAnotherServiceInstance() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String uniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, uniqueIdFromResponse, ComponentTypeEnum.PRODUCT); - assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_NOT_FOUND); - } - - @Test - public void createSeveralServiceInstanceFromSameServices() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void createSeveralServiceInstanceFromDifferentServices() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void createCertifiedServiceInstance() throws Exception { - changeServiceStateToCertified(serviceDetails_01); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceByPm() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceWithoutVf() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails_03, sdncAdminDetails, "0.1", LifeCycleStatesEnum.CHECKIN); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_02, serviceDetails_03, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_02, 1, 0); - } - - @Test - public void createServiceInstanceByNonProductOwner() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails2); - assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceByNonAsdcUser() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - User nonExistingSdncUser = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); - ; - nonExistingSdncUser.setUserId("bt1234"); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, nonExistingSdncUser); - assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceToNotCheckOutProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - // pass - @Test - public void createServiceInstanceNameIsEmpty() throws Exception { - String expectedServiceInstanceName = serviceDetails_01.getName() + " 1"; - String expectedServiceInstancenormalizedName = serviceDetails_01.getName() + "1"; - serviceDetails_01.setName(""); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (expectedServiceInstancenormalizedName).toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance Name ", expectedServiceInstanceName, instanceName); - getComponentAndValidateRIs(productDetails_01, 1, 0); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(expectedServiceInstanceName, actualComponentInstance.getName()); - assertEquals((expectedServiceInstancenormalizedName).toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - // pass - @Test - public void createServiceInstanceNameIsNull() throws Exception { - serviceDetails_01.setName(null); - String expectedServiceInstanceName = (serviceDetails_01.getName() != null ? serviceDetails_01.getName() : "resourceInstanceName") + " 1"; - String expectedServiceInstancenormalizedName = (serviceDetails_01.getName() != null ? serviceDetails_01.getName() : "resourceInstanceName") + "1"; - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (expectedServiceInstancenormalizedName).toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance Name ", expectedServiceInstanceName, instanceName); - getComponentAndValidateRIs(productDetails_01, 1, 0); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(expectedServiceInstanceName, actualComponentInstance.getName()); - assertEquals((expectedServiceInstancenormalizedName).toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - @Test(enabled = false) - public void createServiceInstanceToNonExistingProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, "blabla", ComponentTypeEnum.PRODUCT); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, createServiceInstanceResp.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("blabla"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, createServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceToNonSupportedComponentType() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.RESOURCE_INSTANCE); - assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_UNSUPPORTED_ERROR); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("null"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.UNSUPPORTED_ERROR.name(), varibales, createServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - // pass - @Test - public void createServiceInstancePositionIsEmpty() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - serviceInstanceReqDetails.setPosX(""); - serviceInstanceReqDetails.setPosY(""); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - ComponentInstance componentInstance = ResponseParser.parseToObjectUsingMapper(createServiceInstanceResp.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstancePositionIsNull() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - serviceInstanceReqDetails.setPosX(null); - serviceInstanceReqDetails.setPosY(null); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - ComponentInstance componentInstance = ResponseParser.parseToObjectUsingMapper(createServiceInstanceResp.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceByDesigner() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncDesignerDetails); - assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void createServiceInstanceUserIdIsEmpty() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - User nonSdncDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - nonSdncDetails.setUserId(""); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, nonSdncDetails); - assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_MISSING_INFORMATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - //// Update Service instance - - @Test - public void updateServiceInstanceNameByPm() throws Exception { - // Check-in Product by PM and Check-out by PM - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - // Create service instance by PM - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "abcD"; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (newName).toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance Name ", newName, instanceName); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(newName, actualComponentInstance.getName()); - assertEquals((newName).toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - @Test - public void updateServiceInstanceNewNameAndLocation() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "updaatedName100"; - serviceInstanceReqDetails.setPosX("100"); - serviceInstanceReqDetails.setPosY("100"); - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); - assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); - assertEquals(newName, actualComponentInstance.getName()); - assertEquals(newName.toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - @Test(enabled = false) - public void updateServiceInstanceNameRemoveSpacesFromBiginningAndEnd() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = " Abcd "; - String expectedNewName = " Abcd "; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (expectedNewName).toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance Name ", expectedNewName, instanceName); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(expectedNewName, actualComponentInstance.getName()); - assertEquals((expectedNewName).toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - // pass - @Test - public void updateServiceInstanceNameAllowedCharacters() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "cier-TYUIOP_asd_0987654321.Abcd"; - String ExpectedNormalizName = "ciertyuiop_asd_0987654321abcd"; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", ExpectedNormalizName, instanceNormalizedName); - assertEquals("check Resource Instance Name ", newName, instanceName); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(newName, actualComponentInstance.getName()); - assertEquals(ExpectedNormalizName, actualComponentInstance.getNormalizedName()); - - } - - @Test - public void updateInstanceNameInvalidCharacters() throws Exception { - char invalidChars[] = { '~', '!', '$', '%', '^', '*', '(', ')', '"', '{', '}', '[', ']', '?', '>', '<', '/', '|', '\\', ',' }; - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "Abcd1"; - String updateName; - for (int i = 0; i < invalidChars.length; i++) { - updateName = newName + invalidChars[i]; - serviceInstanceReqDetails.setName(updateName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - assertEquals("Check response code ", STATUS_CODE_INVALID_CONTENT, updateServiceInstanceResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("Service Instance"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPONENT_NAME.name(), varibales, updateServiceInstanceResponse.getResponse()); - } - } - - // pass - @Test - public void updateInstanceNameMaxLength() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "Qwertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl12345"; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (newName).toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance Name ", newName, instanceName); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(newName, actualComponentInstance.getName()); - assertEquals((newName).toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - @Test - public void updateInstanceNameExceedMaxLength() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String expectedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "name"); - String expectedNormalizedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); - String newName = "Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456"; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - assertEquals("Check response code ", STATUS_CODE_COMPONENT_NAME_EXCEEDS_LIMIT, updateServiceInstanceResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("Service Instance"); - varibales.add("1024"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_EXCEEDS_LIMIT.name(), varibales, updateServiceInstanceResponse.getResponse()); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(expectedName, actualComponentInstance.getName()); - assertEquals(expectedNormalizedName, actualComponentInstance.getNormalizedName()); - } - - @Test - public void updateServiceInstanceNameEmpty() throws Exception { - // see US534663 In case a PS/PM removes the current service instance - // name then BE has to generate again the "default" service instance - // name - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = ""; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + "2").toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + " 2"), instanceName); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(instanceName, actualComponentInstance.getName()); - assertEquals(instanceNormalizedName, actualComponentInstance.getNormalizedName()); - } - - // pass - @Test - public void updateServiceInstanceNameNull() throws Exception { - // see US534663 In case a PS/PM removes the current service instance - // name then BE has to generate again the "default" service instance - // name - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = null; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + "1").toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + " 1"), instanceName); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(instanceName, actualComponentInstance.getName()); - assertEquals(instanceNormalizedName, actualComponentInstance.getNormalizedName()); - } - - @Test - public void updateServiceInstanceCheckedByOtherUser() throws Exception { - // see US534663 In case a PS/PM removes the current service instance - // name then BE has to generate again the "default" service instance - // name - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "blabla"; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails2, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, updateServiceInstanceResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), updateServiceInstanceResponse.getResponse()); - } - - @Test - public void updateServiceInstance_UserIdIsNonAsdcUser() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "blabla"; - serviceInstanceReqDetails.setName(newName); - User nonSdncUserDetails = new User(); - nonSdncUserDetails.setUserId("bt4567"); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, nonSdncUserDetails, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, updateServiceInstanceResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), updateServiceInstanceResponse.getResponse()); - } - - @Test - public void updateServiceInstanceNameToAlreadyExisting() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String ServiceName1 = ResponseParser.getNameFromResponse(createServiceInstanceResp); - createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // Update service instance2 name to service instance1 - serviceInstanceReqDetails.setName(ServiceName1); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - assertEquals("Check response code ", STATUS_CODE_ALREADY_EXISTS, updateServiceInstanceResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("Service Instance"); - varibales.add(ServiceName1); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name(), varibales, updateServiceInstanceResponse.getResponse()); - } - - @Test - public void updateServiceInstanceForNonExistingProduct() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "blabla"; - serviceInstanceReqDetails.setName(newName); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, "blablabla", ComponentTypeEnum.PRODUCT); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, updateServiceInstanceResponse.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, updateServiceInstanceResponse.getResponse()); - - } - - @Test - public void updateNonExistingServiceInstance() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String newName = "blabla"; - serviceInstanceReqDetails.setName(newName); - serviceInstanceReqDetails.setUniqueId("11111111"); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(newName); - varibales.add("service instance"); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, updateServiceInstanceResponse.getErrorCode().intValue()); - // need to change ActionStatus.RESOURCE_INSTANCE_NOT_FOUND.name() to - // ActionStatus.SERVICE_INSTANCE_NOT_FOUND.name() - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INSTANCE_NOT_FOUND.name(), varibales, updateServiceInstanceResponse.getResponse()); - } - - @Test - public void updateServiceInstanceLocation() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - serviceInstanceReqDetails.setPosX("50"); - serviceInstanceReqDetails.setPosY("100"); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); - assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); - } - - @Test - public void updateServiceInstanceToNonExistingLocation() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - String nameFromResponse = ResponseParser.getNameFromResponse(createServiceInstanceResp); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - serviceInstanceReqDetails.setPosX("-50"); - serviceInstanceReqDetails.setPosY("-100"); - serviceInstanceReqDetails.setName(nameFromResponse); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); - assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); - assertEquals(nameFromResponse, actualComponentInstance.getName()); - } - - @Test (enabled = false) - public void updateServiceInstanceLocationNameIsEmpty() throws Exception { - String expectedServiceInstanceName = serviceDetails_01.getName() + " 2"; - String expectedServiceInstancenormalizedName = serviceDetails_01.getName() + "2"; - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - serviceInstanceReqDetails.setPosX("100"); - serviceInstanceReqDetails.setPosY("200"); - serviceInstanceReqDetails.setName(""); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String nameFromResponse = ResponseParser.getNameFromResponse(updateServiceInstanceResponse); - String postX = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "posX"); - String postY = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "posY"); - assertEquals(nameFromResponse, expectedServiceInstanceName); - assertEquals(postX, "100"); - assertEquals(postY, "200"); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); - assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); - assertEquals(nameFromResponse, actualComponentInstance.getName()); - assertEquals(expectedServiceInstancenormalizedName.toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - // pass - @Test - public void updateServiceInstanceNameToProductName() throws Exception { - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); - RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // ComponentInstance componentInstance = - // ResponseParser.parseToObjectUsingMapper(createServiceInstanceResp.getResponse(), - // ComponentInstance.class); - // addCompInstReqCapToExpected(componentInstance, - // ComponentTypeEnum.PRODUCT); - serviceInstanceReqDetails.setName(productDetails_01.getName()); - RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); - assertEquals("check Resource Instance normalizedName ", (serviceInstanceReqDetails.getName()).toLowerCase(), instanceNormalizedName); - assertEquals("check Resource Instance Name ", serviceInstanceReqDetails.getName(), instanceName); - // get product and verify that service instanceName is correct - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - assertEquals(serviceInstanceReqDetails.getName(), actualComponentInstance.getName()); - assertEquals((serviceInstanceReqDetails.getName()).toLowerCase(), actualComponentInstance.getNormalizedName()); - } - - //// Delete Service Instance - - @Test - public void deleteAllServiceInstanceFromProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - getComponentAndValidateRIs(productDetails_01, 0, 0); - } - - @Test - public void deleteServiceWhileServiceInstanceExistInProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - // Delete service while service instance of it exist in product - RestResponse deleteServiceResponse = ServiceRestUtils.deleteServiceById(serviceDetails_01.getUniqueId(), sdncDesignerDetails.getUserId()); - assertTrue(deleteServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - // Get product and verify that service instance still exists - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - // ComponentInstance actualComponentInstance = - // actualProduct.getComponentInstances().get(0); - // assertTrue(serviceInstanceUniqueIdFromResponse == - // actualComponentInstance.getUniqueId()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - // pass - @Test - public void deleteServiceInstanceByPm() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void deleteServiceInstanceByPmCreatedByPm() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - productDetails_01.setUniqueId(ResponseParser.getUniqueIdFromResponse(restResponse)); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void deleteServiceInstanceByPmWhichIsCheckedOutByAnotherPm() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails2); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - // DE190189 - @Test - public void deleteServiceInstanceByPmCreatedByPs() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - String productOldUniqueId = productDetails_01.getUniqueId(); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(restResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get product and get service instance new uniquId - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - String serviceInstanceUniqueId = actualComponentInstance.getUniqueId(); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - getComponentAndValidateRIs(productDetails_01, 0, 0); - } - - // DE190189 - @Test - public void deleteServiceInstanceByAdminCreatedByPs() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - String productOldUniqueId = productDetails_01.getUniqueId(); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(restResponse); - updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); - // get product and get service instance new uniquId - RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncAdminDetails.getUserId()); - Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); - ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); - String serviceInstanceUniqueId = actualComponentInstance.getUniqueId(); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncAdminDetails); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - getComponentAndValidateRIs(productDetails_01, 0, 0); - } - - @Test - public void createAndDeleteServiceInstanceByAdmin() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - // productDetails_01.setUniqueId(ResponseParser.getUniqueIdFromResponse(restResponse)); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncAdminDetails); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncAdminDetails); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncAdminDetails); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void deleteServiceInstanceFromNonCheckOutProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void deleteServiceInstanceByDesigner() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncDesignerDetails); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void deleteServiceInstanceByTester() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncTesterDetails); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void deleteServiceInstanceByPsWhichIsCheckedOutByAnotherPs() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPsDetails2); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - // pass - @Test - public void deleteServiceInstanceByNonAsdcUser() throws Exception { - User nonExistingSdncUser = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); - ; - nonExistingSdncUser.setUserId("bt1234"); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, nonExistingSdncUser); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void deleteServiceInstanceFromNonExistingProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, "1234567890", serviceInstanceUniqueId, ComponentTypeEnum.PRODUCT); - assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_NOT_FOUND); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, deleteResourceInstanceResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void deleteNonExistingServiceInstanceFromProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - // String serviceInstanceUniqueId = - // ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, productDetails_01.getUniqueId(), "1234567890123456unExistingServiceInstance", ComponentTypeEnum.PRODUCT); - assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_NOT_FOUND); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("1234567890123456unExistingServiceInstance"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, deleteResourceInstanceResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void deleteServiceInstanceFromNonSupportedComponentType() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, productDetails_01.getUniqueId(), serviceInstanceUniqueId, ComponentTypeEnum.RESOURCE_INSTANCE); - assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_UNSUPPORTED_ERROR); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add("null"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.UNSUPPORTED_ERROR.name(), varibales, deleteResourceInstanceResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void deleteServiceInstanceComponentTypeIsNotProduct() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, productDetails_01.getUniqueId(), serviceInstanceUniqueId, ComponentTypeEnum.SERVICE); - assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_NOT_FOUND); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), varibales, deleteResourceInstanceResponse.getResponse()); - getComponentAndValidateRIs(productDetails_01, 2, 0); - } - - @Test - public void deleteServiceInstanceUserIdIsEmpty() throws Exception { - User nonSdncDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - nonSdncDetails.setUserId(""); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, nonSdncDetails); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_MISSING_INFORMATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - @Test - public void deleteCertifiedServiceInstance() throws Exception { - changeServiceStateToCertified(serviceDetails_01); - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); - assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); - getComponentAndValidateRIs(productDetails_01, 1, 0); - } - - //////////////////////////////////// - - private void certifyVf(ResourceReqDetails resource) throws Exception { - RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String cpCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVFC_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String computeCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String vlCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - // Fixing Vl/Cp req/cap - ComponentTypeEnum containerCompType = ComponentTypeEnum.RESOURCE; - User user = sdncDesignerDetails; - fulfillCpRequirement(resource, cpCompInstId, computeCompInstId, computeCompInstId, user, containerCompType); - consumeVlCapability(resource, cpCompInstId, vlCompInstId, cpCompInstId, user, containerCompType); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails, resource.getUniqueId()); - ResourceRestUtils.checkSuccess(response); - RestResponse changeResourceStateToCertified = changeResourceStateToCertified(resource); - ResourceRestUtils.checkSuccess(changeResourceStateToCertified); - } - - private RestResponse changeResourceStateToCertified(ResourceReqDetails resourceDetails) throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); + protected ArtifactReqDetails heatArtifactDetails; + @Rule + public static TestName name = new TestName(); + + public ProductComponentInstanceCRUDTest() { + super(name, ProductComponentInstanceCRUDTest.class.getName()); + } + + @BeforeMethod + public void before() throws Exception { + init(); + createComponents(); + } + + private void createComponents() throws Exception { + + heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); + createAtomicResource(resourceDetailsVFC_01); + changeResourceStateToCertified(resourceDetailsVFC_01); + createAtomicResource(resourceDetailsCP_01); + changeResourceStateToCertified(resourceDetailsCP_01); + createAtomicResource(resourceDetailsVL_01); + changeResourceStateToCertified(resourceDetailsVL_01); + createAtomicResource(resourceDetailsVFC_02); + changeResourceStateToCertified(resourceDetailsVFC_02); + createAtomicResource(resourceDetailsCP_02); + changeResourceStateToCertified(resourceDetailsCP_02); + createAtomicResource(resourceDetailsVL_02); + changeResourceStateToCertified(resourceDetailsVL_02); + createVF(resourceDetailsVF_02); + createVF(resourceDetailsVF_01); + // create check-In services + createService(serviceDetails_01); + createService(serviceDetails_02); + createService(serviceDetails_03); + createProduct(productDetails_01); + createProduct(productDetails_02); + + // addresourceDetailsCP_02 ,resourceDetailsVFC_02 and + // resourceDetailsVL_02 to resourceDetailsVF_02 check-in VF + RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsVFC_02, sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsCP_02, sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsVL_02, sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); + resourceDetailsVF_02.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); + // addresourceDetailsCP_01 ,resourceDetailsVFC_01 and + // resourceDetailsVL_01 to resourceDetailsVF_01 and certify + // resourceDetailsVF_01 + certifyVf(resourceDetailsVF_01); + createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); // serviceDetails_01 + // has + // certified + // VF + createVFInstanceDuringSetup(serviceDetails_02, resourceDetailsVF_02, sdncDesignerDetails); // serviceDetails_02 + // has + // check-in + // VF + restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_02, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + } + + // pass + @Test + public void createServiceInstanceTest() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + // DE189427 + @Test(enabled = false) + public void createServiceInstanceFromCheckedOutState() throws Exception { + // can't create instance of checked-out component + RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceInToAnotherServiceInstance() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String uniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, uniqueIdFromResponse, ComponentTypeEnum.PRODUCT); + assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_NOT_FOUND); + } + + @Test + public void createSeveralServiceInstanceFromSameServices() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void createSeveralServiceInstanceFromDifferentServices() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void createCertifiedServiceInstance() throws Exception { + changeServiceStateToCertified(serviceDetails_01); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceByPm() throws Exception { + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceWithoutVf() throws Exception { + LifecycleRestUtils.changeServiceState(serviceDetails_03, sdncAdminDetails, "0.1", LifeCycleStatesEnum.CHECKIN); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_02, serviceDetails_03, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_02, 1, 0); + } + + @Test + public void createServiceInstanceByNonProductOwner() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails2); + assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceByNonAsdcUser() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + User nonExistingSdncUser = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); + ; + nonExistingSdncUser.setUserId("bt1234"); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, nonExistingSdncUser); + assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceToNotCheckOutProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + // pass + @Test + public void createServiceInstanceNameIsEmpty() throws Exception { + String expectedServiceInstanceName = serviceDetails_01.getName() + " 1"; + String expectedServiceInstancenormalizedName = serviceDetails_01.getName() + "1"; + serviceDetails_01.setName(""); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (expectedServiceInstancenormalizedName).toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance Name ", expectedServiceInstanceName, instanceName); + getComponentAndValidateRIs(productDetails_01, 1, 0); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(expectedServiceInstanceName, actualComponentInstance.getName()); + assertEquals((expectedServiceInstancenormalizedName).toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + // pass + @Test + public void createServiceInstanceNameIsNull() throws Exception { + serviceDetails_01.setName(null); + String expectedServiceInstanceName = (serviceDetails_01.getName() != null ? serviceDetails_01.getName() : "resourceInstanceName") + " 1"; + String expectedServiceInstancenormalizedName = (serviceDetails_01.getName() != null ? serviceDetails_01.getName() : "resourceInstanceName") + "1"; + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (expectedServiceInstancenormalizedName).toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance Name ", expectedServiceInstanceName, instanceName); + getComponentAndValidateRIs(productDetails_01, 1, 0); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(expectedServiceInstanceName, actualComponentInstance.getName()); + assertEquals((expectedServiceInstancenormalizedName).toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + @Test(enabled = false) + public void createServiceInstanceToNonExistingProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, "blabla", ComponentTypeEnum.PRODUCT); + AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, createServiceInstanceResp.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("blabla"); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, createServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceToNonSupportedComponentType() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.RESOURCE_INSTANCE); + assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_UNSUPPORTED_ERROR); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("null"); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.UNSUPPORTED_ERROR.name(), varibales, createServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + // pass + @Test + public void createServiceInstancePositionIsEmpty() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + serviceInstanceReqDetails.setPosX(""); + serviceInstanceReqDetails.setPosY(""); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + ComponentInstance componentInstance = ResponseParser.parseToObjectUsingMapper(createServiceInstanceResp.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstancePositionIsNull() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + serviceInstanceReqDetails.setPosX(null); + serviceInstanceReqDetails.setPosY(null); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + ComponentInstance componentInstance = ResponseParser.parseToObjectUsingMapper(createServiceInstanceResp.getResponse(), ComponentInstance.class); + addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.PRODUCT); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceByDesigner() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncDesignerDetails); + assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void createServiceInstanceUserIdIsEmpty() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + User nonSdncDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); + nonSdncDetails.setUserId(""); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, nonSdncDetails); + assertTrue(createServiceInstanceResp.getErrorCode() == STATUS_CODE_MISSING_INFORMATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), new ArrayList<String>(), createServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + //// Update Service instance + + @Test + public void updateServiceInstanceNameByPm() throws Exception { + // Check-in Product by PM and Check-out by PM + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + // Create service instance by PM + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "abcD"; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (newName).toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance Name ", newName, instanceName); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(newName, actualComponentInstance.getName()); + assertEquals((newName).toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + @Test + public void updateServiceInstanceNewNameAndLocation() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "updaatedName100"; + serviceInstanceReqDetails.setPosX("100"); + serviceInstanceReqDetails.setPosY("100"); + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); + assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); + assertEquals(newName, actualComponentInstance.getName()); + assertEquals(newName.toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + @Test(enabled = false) + public void updateServiceInstanceNameRemoveSpacesFromBiginningAndEnd() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = " Abcd "; + String expectedNewName = " Abcd "; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (expectedNewName).toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance Name ", expectedNewName, instanceName); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(expectedNewName, actualComponentInstance.getName()); + assertEquals((expectedNewName).toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + // pass + @Test + public void updateServiceInstanceNameAllowedCharacters() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "cier-TYUIOP_asd_0987654321.Abcd"; + String ExpectedNormalizName = "ciertyuiop_asd_0987654321abcd"; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", ExpectedNormalizName, instanceNormalizedName); + assertEquals("check Resource Instance Name ", newName, instanceName); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(newName, actualComponentInstance.getName()); + assertEquals(ExpectedNormalizName, actualComponentInstance.getNormalizedName()); + + } + + @Test + public void updateInstanceNameInvalidCharacters() throws Exception { + char invalidChars[] = {'~', '!', '$', '%', '^', '*', '(', ')', '"', '{', '}', '[', ']', '?', '>', '<', '/', '|', '\\', ','}; + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "Abcd1"; + String updateName; + for (int i = 0; i < invalidChars.length; i++) { + updateName = newName + invalidChars[i]; + serviceInstanceReqDetails.setName(updateName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + assertEquals("Check response code ", STATUS_CODE_INVALID_CONTENT, updateServiceInstanceResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("Service Instance"); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPONENT_NAME.name(), varibales, updateServiceInstanceResponse.getResponse()); + } + } + + // pass + @Test + public void updateInstanceNameMaxLength() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "Qwertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl12345"; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (newName).toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance Name ", newName, instanceName); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(newName, actualComponentInstance.getName()); + assertEquals((newName).toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + @Test + public void updateInstanceNameExceedMaxLength() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String expectedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "name"); + String expectedNormalizedName = ResponseParser.getValueFromJsonResponse(createServiceInstanceResp.getResponse(), "normalizedName"); + String newName = "Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ciertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456Ahjklzxcvbnmasdfghjkl123456"; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + assertEquals("Check response code ", STATUS_CODE_COMPONENT_NAME_EXCEEDS_LIMIT, updateServiceInstanceResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("Service Instance"); + varibales.add("1024"); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_EXCEEDS_LIMIT.name(), varibales, updateServiceInstanceResponse.getResponse()); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(expectedName, actualComponentInstance.getName()); + assertEquals(expectedNormalizedName, actualComponentInstance.getNormalizedName()); + } + + @Test + public void updateServiceInstanceNameEmpty() throws Exception { + // see US534663 In case a PS/PM removes the current service instance + // name then BE has to generate again the "default" service instance + // name + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = ""; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + "2").toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + " 2"), instanceName); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(instanceName, actualComponentInstance.getName()); + assertEquals(instanceNormalizedName, actualComponentInstance.getNormalizedName()); + } + + // pass + @Test + public void updateServiceInstanceNameNull() throws Exception { + // see US534663 In case a PS/PM removes the current service instance + // name then BE has to generate again the "default" service instance + // name + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = null; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + "1").toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance normalizedName ", (serviceDetails_01.getName() + " 1"), instanceName); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(instanceName, actualComponentInstance.getName()); + assertEquals(instanceNormalizedName, actualComponentInstance.getNormalizedName()); + } + + @Test + public void updateServiceInstanceCheckedByOtherUser() throws Exception { + // see US534663 In case a PS/PM removes the current service instance + // name then BE has to generate again the "default" service instance + // name + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "blabla"; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails2, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, updateServiceInstanceResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), updateServiceInstanceResponse.getResponse()); + } + + @Test + public void updateServiceInstance_UserIdIsNonAsdcUser() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "blabla"; + serviceInstanceReqDetails.setName(newName); + User nonSdncUserDetails = new User(); + nonSdncUserDetails.setUserId("bt4567"); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, nonSdncUserDetails, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, updateServiceInstanceResponse.getErrorCode().intValue()); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), updateServiceInstanceResponse.getResponse()); + } + + @Test + public void updateServiceInstanceNameToAlreadyExisting() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String ServiceName1 = ResponseParser.getNameFromResponse(createServiceInstanceResp); + createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // Update service instance2 name to service instance1 + serviceInstanceReqDetails.setName(ServiceName1); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + assertEquals("Check response code ", STATUS_CODE_ALREADY_EXISTS, updateServiceInstanceResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("Service Instance"); + varibales.add(ServiceName1); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name(), varibales, updateServiceInstanceResponse.getResponse()); + } + + @Test + public void updateServiceInstanceForNonExistingProduct() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "blabla"; + serviceInstanceReqDetails.setName(newName); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, "blablabla", ComponentTypeEnum.PRODUCT); + AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, updateServiceInstanceResponse.getErrorCode().intValue()); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(""); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, updateServiceInstanceResponse.getResponse()); + + } + + @Test + public void updateNonExistingServiceInstance() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String newName = "blabla"; + serviceInstanceReqDetails.setName(newName); + serviceInstanceReqDetails.setUniqueId("11111111"); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(newName); + varibales.add("service instance"); + AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, updateServiceInstanceResponse.getErrorCode().intValue()); + // need to change ActionStatus.RESOURCE_INSTANCE_NOT_FOUND.name() to + // ActionStatus.SERVICE_INSTANCE_NOT_FOUND.name() + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INSTANCE_NOT_FOUND.name(), varibales, updateServiceInstanceResponse.getResponse()); + } + + @Test + public void updateServiceInstanceLocation() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + serviceInstanceReqDetails.setPosX("50"); + serviceInstanceReqDetails.setPosY("100"); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); + assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); + } + + @Test + public void updateServiceInstanceToNonExistingLocation() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + String nameFromResponse = ResponseParser.getNameFromResponse(createServiceInstanceResp); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + serviceInstanceReqDetails.setPosX("-50"); + serviceInstanceReqDetails.setPosY("-100"); + serviceInstanceReqDetails.setName(nameFromResponse); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); + assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); + assertEquals(nameFromResponse, actualComponentInstance.getName()); + } + + @Test(enabled = false) + public void updateServiceInstanceLocationNameIsEmpty() throws Exception { + String expectedServiceInstanceName = serviceDetails_01.getName() + " 2"; + String expectedServiceInstancenormalizedName = serviceDetails_01.getName() + "2"; + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + serviceInstanceReqDetails.setPosX("100"); + serviceInstanceReqDetails.setPosY("200"); + serviceInstanceReqDetails.setName(""); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String nameFromResponse = ResponseParser.getNameFromResponse(updateServiceInstanceResponse); + String postX = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "posX"); + String postY = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "posY"); + assertEquals(nameFromResponse, expectedServiceInstanceName); + assertEquals(postX, "100"); + assertEquals(postY, "200"); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(serviceInstanceReqDetails.getPosX(), actualComponentInstance.getPosX()); + assertEquals(serviceInstanceReqDetails.getPosY(), actualComponentInstance.getPosY()); + assertEquals(nameFromResponse, actualComponentInstance.getName()); + assertEquals(expectedServiceInstancenormalizedName.toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + // pass + @Test + public void updateServiceInstanceNameToProductName() throws Exception { + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_01); + RestResponse createServiceInstanceResp = ComponentInstanceRestUtils.createComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // ComponentInstance componentInstance = + // ResponseParser.parseToObjectUsingMapper(createServiceInstanceResp.getResponse(), + // ComponentInstance.class); + // addCompInstReqCapToExpected(componentInstance, + // ComponentTypeEnum.PRODUCT); + serviceInstanceReqDetails.setName(productDetails_01.getName()); + RestResponse updateServiceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ResourceRestUtils.checkSuccess(updateServiceInstanceResponse); + String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "normalizedName"); + String instanceName = ResponseParser.getValueFromJsonResponse(updateServiceInstanceResponse.getResponse(), "name"); + assertEquals("check Resource Instance normalizedName ", (serviceInstanceReqDetails.getName()).toLowerCase(), instanceNormalizedName); + assertEquals("check Resource Instance Name ", serviceInstanceReqDetails.getName(), instanceName); + // get product and verify that service instanceName is correct + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + assertEquals(serviceInstanceReqDetails.getName(), actualComponentInstance.getName()); + assertEquals((serviceInstanceReqDetails.getName()).toLowerCase(), actualComponentInstance.getNormalizedName()); + } + + //// Delete Service Instance + + @Test + public void deleteAllServiceInstanceFromProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + getComponentAndValidateRIs(productDetails_01, 0, 0); + } + + @Test + public void deleteServiceWhileServiceInstanceExistInProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + // Delete service while service instance of it exist in product + RestResponse deleteServiceResponse = ServiceRestUtils.deleteServiceById(serviceDetails_01.getUniqueId(), sdncDesignerDetails.getUserId()); + assertTrue(deleteServiceResponse.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + // Get product and verify that service instance still exists + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + // ComponentInstance actualComponentInstance = + // actualProduct.getComponentInstances().get(0); + // assertTrue(serviceInstanceUniqueIdFromResponse == + // actualComponentInstance.getUniqueId()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + // pass + @Test + public void deleteServiceInstanceByPm() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void deleteServiceInstanceByPmCreatedByPm() throws Exception { + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + productDetails_01.setUniqueId(ResponseParser.getUniqueIdFromResponse(restResponse)); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void deleteServiceInstanceByPmWhichIsCheckedOutByAnotherPm() throws Exception { + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails2); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + // DE190189 + @Test + public void deleteServiceInstanceByPmCreatedByPs() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + String productOldUniqueId = productDetails_01.getUniqueId(); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(restResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get product and get service instance new uniquId + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPmDetails1.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + String serviceInstanceUniqueId = actualComponentInstance.getUniqueId(); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + getComponentAndValidateRIs(productDetails_01, 0, 0); + } + + // DE190189 + @Test + public void deleteServiceInstanceByAdminCreatedByPs() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + String productOldUniqueId = productDetails_01.getUniqueId(); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + String productNewUniqueId = ResponseParser.getUniqueIdFromResponse(restResponse); + updateExpectedReqCapAfterChangeLifecycleState(productOldUniqueId, productNewUniqueId); + // get product and get service instance new uniquId + RestResponse getActualProductResponse = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncAdminDetails.getUserId()); + Product actualProduct = ResponseParser.parseToObjectUsingMapper(getActualProductResponse.getResponse(), Product.class); + ComponentInstance actualComponentInstance = actualProduct.getComponentInstances().get(0); + String serviceInstanceUniqueId = actualComponentInstance.getUniqueId(); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncAdminDetails); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + getComponentAndValidateRIs(productDetails_01, 0, 0); + } + + @Test + public void createAndDeleteServiceInstanceByAdmin() throws Exception { + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncAdminDetails, LifeCycleStatesEnum.CHECKOUT); + ResourceRestUtils.checkSuccess(restResponse); + // productDetails_01.setUniqueId(ResponseParser.getUniqueIdFromResponse(restResponse)); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncAdminDetails); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncAdminDetails); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncAdminDetails); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void deleteServiceInstanceFromNonCheckOutProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + RestResponse restResponse = LifecycleRestUtils.changeProductState(productDetails_01, sdncPmDetails1, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void deleteServiceInstanceByDesigner() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncDesignerDetails); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void deleteServiceInstanceByTester() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncTesterDetails); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void deleteServiceInstanceByPsWhichIsCheckedOutByAnotherPs() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPsDetails2); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + // pass + @Test + public void deleteServiceInstanceByNonAsdcUser() throws Exception { + User nonExistingSdncUser = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); + ; + nonExistingSdncUser.setUserId("bt1234"); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, nonExistingSdncUser); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void deleteServiceInstanceFromNonExistingProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, "1234567890", serviceInstanceUniqueId, ComponentTypeEnum.PRODUCT); + assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_NOT_FOUND); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(""); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, deleteResourceInstanceResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void deleteNonExistingServiceInstanceFromProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + // String serviceInstanceUniqueId = + // ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, productDetails_01.getUniqueId(), "1234567890123456unExistingServiceInstance", ComponentTypeEnum.PRODUCT); + assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_NOT_FOUND); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("1234567890123456unExistingServiceInstance"); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PRODUCT_NOT_FOUND.name(), varibales, deleteResourceInstanceResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void deleteServiceInstanceFromNonSupportedComponentType() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, productDetails_01.getUniqueId(), serviceInstanceUniqueId, ComponentTypeEnum.RESOURCE_INSTANCE); + assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_UNSUPPORTED_ERROR); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add("null"); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.UNSUPPORTED_ERROR.name(), varibales, deleteResourceInstanceResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void deleteServiceInstanceComponentTypeIsNotProduct() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncPmDetails1, productDetails_01.getUniqueId(), serviceInstanceUniqueId, ComponentTypeEnum.SERVICE); + assertTrue(deleteResourceInstanceResponse.getErrorCode() == STATUS_CODE_NOT_FOUND); + ArrayList<String> varibales = new ArrayList<String>(); + varibales.add(""); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), varibales, deleteResourceInstanceResponse.getResponse()); + getComponentAndValidateRIs(productDetails_01, 2, 0); + } + + @Test + public void deleteServiceInstanceUserIdIsEmpty() throws Exception { + User nonSdncDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); + nonSdncDetails.setUserId(""); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, nonSdncDetails); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_MISSING_INFORMATION); + ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), new ArrayList<String>(), deleteServiceInstanceResp.getResponse()); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + @Test + public void deleteCertifiedServiceInstance() throws Exception { + changeServiceStateToCertified(serviceDetails_01); + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + RestResponse deleteServiceInstanceResp = deleteServiceInstance(serviceInstanceUniqueId, productDetails_01, sdncPmDetails1); + assertTrue(deleteServiceInstanceResp.getErrorCode() == STATUS_CODE_SUCCESS_DELETE); + getComponentAndValidateRIs(productDetails_01, 1, 0); + } + + //////////////////////////////////// + + private void certifyVf(ResourceReqDetails resource) throws Exception { + RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsCP_01, sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + String cpCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); + + createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVFC_02, sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + String computeCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); + + createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVL_01, sdncDesignerDetails); + ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); + String vlCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); + + // Fixing Vl/Cp req/cap + ComponentTypeEnum containerCompType = ComponentTypeEnum.RESOURCE; + User user = sdncDesignerDetails; + fulfillCpRequirement(resource, cpCompInstId, computeCompInstId, computeCompInstId, user, containerCompType); + consumeVlCapability(resource, cpCompInstId, vlCompInstId, cpCompInstId, user, containerCompType); + + RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails, resource.getUniqueId()); + ResourceRestUtils.checkSuccess(response); + RestResponse changeResourceStateToCertified = changeResourceStateToCertified(resource); + ResourceRestUtils.checkSuccess(changeResourceStateToCertified); + } + + private RestResponse changeResourceStateToCertified(ResourceReqDetails resourceDetails) throws Exception { +/* RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); + ResourceRestUtils.checkSuccess(restResponse); restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST); if (restResponse.getErrorCode() == 200) { restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterDetails, LifeCycleStatesEnum.STARTCERTIFICATION); } else return restResponse; - if (restResponse.getErrorCode() == 200) { - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterDetails, LifeCycleStatesEnum.CERTIFY); - if (restResponse.getErrorCode() == 200) { - String newVersion = ResponseParser.getVersionFromResponse(restResponse); - resourceDetails.setVersion(newVersion); - resourceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED); - resourceDetails.setLastUpdaterUserId(sdncTesterDetails.getUserId()); - resourceDetails.setLastUpdaterFullName(sdncTesterDetails.getFullName()); - String uniqueIdFromRresponse = ResponseParser.getValueFromJsonResponse(restResponse.getResponse(), "uniqueId"); - resourceDetails.setUniqueId(uniqueIdFromRresponse); - } - } + if (restResponse.getErrorCode() == 200) {*/ + RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFY); + if (restResponse.getErrorCode() == 200) { + String newVersion = ResponseParser.getVersionFromResponse(restResponse); + resourceDetails.setVersion(newVersion); + resourceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED); + resourceDetails.setLastUpdaterUserId(sdncDesignerDetails.getUserId()); + resourceDetails.setLastUpdaterFullName(sdncDesignerDetails.getFullName()); + String uniqueIdFromRresponse = ResponseParser.getValueFromJsonResponse(restResponse.getResponse(), "uniqueId"); + resourceDetails.setUniqueId(uniqueIdFromRresponse); + } return restResponse; - } +} - private RestResponse changeServiceStateToCertified(ServiceReqDetails serviceDetails) throws Exception { + private RestResponse changeServiceStateToCertified(ServiceReqDetails serviceDetails) throws Exception { /* * RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); ResourceRestUtils.checkSuccess(restResponse); */ - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - if (restResponse.getErrorCode() == 200) { - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDetails, LifeCycleStatesEnum.STARTCERTIFICATION); - } else - return restResponse; - if (restResponse.getErrorCode() == 200) { - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDetails, LifeCycleStatesEnum.CERTIFY); - if (restResponse.getErrorCode() == 200) { - serviceDetails.setVersion("1.0"); - serviceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED); - serviceDetails.setLastUpdaterUserId(sdncTesterDetails.getUserId()); - serviceDetails.setLastUpdaterFullName(sdncTesterDetails.getFullName()); - String uniqueIdFromRresponse = ResponseParser.getValueFromJsonResponse(restResponse.getResponse(), "uniqueId"); - serviceDetails.setUniqueId(uniqueIdFromRresponse); - } - } - return restResponse; - } - - @Test - public void deleteServiceInstanceTest() throws Exception { - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - String compInstId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - - createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 2, 0); - String compInstId2 = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - - RestResponse deleteServiceInstanceResp = deleteServiceInstance(compInstId, productDetails_01, sdncPmDetails1); - ResourceRestUtils.checkDeleteResponse(deleteServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 1, 0); - - deleteServiceInstanceResp = deleteServiceInstance(compInstId2, productDetails_01, sdncPmDetails1); - ResourceRestUtils.checkDeleteResponse(deleteServiceInstanceResp); - getComponentAndValidateRIs(productDetails_01, 0, 0); - } - - @Test - public void returnedServiceInstanceTypeAttributeTest() throws Exception { - String expectedServiceType = ComponentTypeEnum.SERVICE.getValue().toUpperCase(); - - RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); - ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); - String serviceUniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); - ComponentInstanceRestUtils.checkComponentInstanceType(createServiceInstanceResp, expectedServiceType); - - RestResponse getProductResp = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPsDetails1.getUserId()); - ProductRestUtils.checkSuccess(getProductResp); - Product productObject = ResponseParser.parseToObjectUsingMapper(getProductResp.getResponse(), Product.class); - List<ComponentInstance> productComponentInstances = productObject.getComponentInstances(); - for (ComponentInstance comp : productComponentInstances) { - String actualOriginType = comp.getOriginType().getValue().toUpperCase(); - assertTrue(expectedServiceType.equals(actualOriginType)); - } - - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_02); - serviceInstanceReqDetails.setUniqueId(serviceUniqueIdFromResponse); - serviceInstanceReqDetails.setComponentUid(serviceDetails_01.getUniqueId()); - RestResponse updateResourceInstance = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); - ComponentInstanceRestUtils.checkSuccess(updateResourceInstance); - ComponentInstanceRestUtils.checkComponentInstanceType(updateResourceInstance, expectedServiceType); - - } + RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST); + if (restResponse.getErrorCode() == 200) { + restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDetails, LifeCycleStatesEnum.STARTCERTIFICATION); + } else + return restResponse; + if (restResponse.getErrorCode() == 200) { + restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDetails, LifeCycleStatesEnum.CERTIFY); + if (restResponse.getErrorCode() == 200) { + serviceDetails.setVersion("1.0"); + serviceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED); + serviceDetails.setLastUpdaterUserId(sdncTesterDetails.getUserId()); + serviceDetails.setLastUpdaterFullName(sdncTesterDetails.getFullName()); + String uniqueIdFromRresponse = ResponseParser.getValueFromJsonResponse(restResponse.getResponse(), "uniqueId"); + serviceDetails.setUniqueId(uniqueIdFromRresponse); + } + } + return restResponse; + } + + @Test + public void deleteServiceInstanceTest() throws Exception { + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + String compInstId = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + + createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_02, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 2, 0); + String compInstId2 = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + + RestResponse deleteServiceInstanceResp = deleteServiceInstance(compInstId, productDetails_01, sdncPmDetails1); + ResourceRestUtils.checkDeleteResponse(deleteServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 1, 0); + + deleteServiceInstanceResp = deleteServiceInstance(compInstId2, productDetails_01, sdncPmDetails1); + ResourceRestUtils.checkDeleteResponse(deleteServiceInstanceResp); + getComponentAndValidateRIs(productDetails_01, 0, 0); + } + + @Test + public void returnedServiceInstanceTypeAttributeTest() throws Exception { + String expectedServiceType = ComponentTypeEnum.SERVICE.getValue().toUpperCase(); + + RestResponse createServiceInstanceResp = createServiceInstance(productDetails_01, serviceDetails_01, sdncPmDetails1); + ResourceRestUtils.checkCreateResponse(createServiceInstanceResp); + String serviceUniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(createServiceInstanceResp); + ComponentInstanceRestUtils.checkComponentInstanceType(createServiceInstanceResp, expectedServiceType); + + RestResponse getProductResp = ProductRestUtils.getProduct(productDetails_01.getUniqueId(), sdncPsDetails1.getUserId()); + ProductRestUtils.checkSuccess(getProductResp); + Product productObject = ResponseParser.parseToObjectUsingMapper(getProductResp.getResponse(), Product.class); + List<ComponentInstance> productComponentInstances = productObject.getComponentInstances(); + for (ComponentInstance comp : productComponentInstances) { + String actualOriginType = comp.getOriginType().getValue().toUpperCase(); + assertTrue(expectedServiceType.equals(actualOriginType)); + } + + ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory.getComponentResourceInstance(serviceDetails_02); + serviceInstanceReqDetails.setUniqueId(serviceUniqueIdFromResponse); + serviceInstanceReqDetails.setComponentUid(serviceDetails_01.getUniqueId()); + RestResponse updateResourceInstance = ComponentInstanceRestUtils.updateComponentInstance(serviceInstanceReqDetails, sdncPmDetails1, productDetails_01.getUniqueId(), ComponentTypeEnum.PRODUCT); + ComponentInstanceRestUtils.checkSuccess(updateResourceInstance); + ComponentInstanceRestUtils.checkComponentInstanceType(updateResourceInstance, expectedServiceType); + + } } diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCreateWithValidationsTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCreateWithValidationsTest.java index 2796fa8403..a0a961dd8e 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCreateWithValidationsTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCreateWithValidationsTest.java @@ -20,11 +20,6 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.Arrays; - import org.json.JSONArray; import org.json.JSONException; import org.junit.Rule; @@ -48,6 +43,11 @@ import org.openecomp.sdc.ci.tests.utils.validation.ProductValidationUtils; import org.openecomp.sdc.common.api.Constants; import org.testng.annotations.Test; +import java.util.Arrays; + +import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertTrue; + public class ProductCreateWithValidationsTest extends ProductBaseTest { @Rule public static TestName name = new TestName(); diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCrudTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCrudTest.java index 88c0f4d3bb..e22318eda7 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCrudTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductCrudTest.java @@ -20,15 +20,10 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Iterator; -import java.util.List; - +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; import org.junit.Rule; import org.junit.rules.TestName; import org.openecomp.sdc.be.dao.api.ActionStatus; @@ -45,11 +40,7 @@ import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; import org.openecomp.sdc.ci.tests.utils.general.Convertor; import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; +import org.openecomp.sdc.ci.tests.utils.rest.*; import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; import org.openecomp.sdc.ci.tests.utils.validation.ProductValidationUtils; @@ -58,10 +49,14 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.testng.annotations.Test; -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Iterator; +import java.util.List; + +import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertNotNull; public class ProductCrudTest extends ProductBaseTest { private static Logger log = LoggerFactory.getLogger(ProductCrudTest.class.getName()); diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductLifecycleTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductLifecycleTest.java index 26bb3e29e9..7404e8e8a6 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductLifecycleTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductLifecycleTest.java @@ -20,8 +20,6 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.testng.AssertJUnit.assertEquals; - import org.junit.rules.TestName; import org.openecomp.sdc.be.model.Product; import org.openecomp.sdc.ci.tests.datatypes.ProductReqDetails; @@ -32,6 +30,8 @@ import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils; import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; import org.testng.annotations.BeforeMethod; +import static org.testng.AssertJUnit.assertEquals; + public abstract class ProductLifecycleTest extends ProductBaseTest { protected static final String CHECKIN_ACTION = "Checkin"; diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductTestBase.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductTestBase.java index 479dbb9436..fd59f8ed33 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductTestBase.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductTestBase.java @@ -20,12 +20,6 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.io.IOException; - import org.apache.log4j.lf5.util.ResourceUtils; import org.junit.Before; import org.junit.rules.TestName; @@ -34,25 +28,18 @@ import org.openecomp.sdc.be.model.Product; import org.openecomp.sdc.be.model.Resource; import org.openecomp.sdc.be.model.Service; import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ProductReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; +import org.openecomp.sdc.ci.tests.datatypes.*; import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; 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.ArtifactUtils; import org.openecomp.sdc.ci.tests.utils.DbUtils; import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils; -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.rest.ServiceRestUtils; +import org.openecomp.sdc.ci.tests.utils.rest.*; + +import java.io.IOException; + +import static org.junit.Assert.*; public class ProductTestBase extends ProductBaseTest { diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductToscaYamlGenerationTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductToscaYamlGenerationTest.java index 412e6fd92d..0c74f255fd 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductToscaYamlGenerationTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductToscaYamlGenerationTest.java @@ -20,10 +20,7 @@ package org.openecomp.sdc.ci.tests.execute.product; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; - +import com.google.gson.Gson; import org.junit.Rule; import org.junit.rules.TestName; import org.openecomp.sdc.be.model.ArtifactUiDownloadData; @@ -31,7 +28,9 @@ import org.openecomp.sdc.ci.tests.utils.Decoder; import org.openecomp.sdc.ci.tests.utils.Utils; import org.testng.annotations.Test; -import com.google.gson.Gson; +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.io.InputStream; public class ProductToscaYamlGenerationTest extends ProductTestBase { diff --git a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductUndoCheckoutTest.java b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductUndoCheckoutTest.java index d4bfb62377..4bd1dffeff 100644 --- a/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductUndoCheckoutTest.java +++ b/test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/product/ProductUndoCheckoutTest.java @@ -20,11 +20,6 @@ package org.openecomp.sdc.ci.tests.execute.product; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNull; - -import java.io.FileNotFoundException; - import org.junit.Rule; import org.junit.rules.TestName; import org.openecomp.sdc.be.dao.api.ActionStatus; @@ -44,6 +39,11 @@ import org.openecomp.sdc.common.api.Constants; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; +import java.io.FileNotFoundException; + +import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertNull; + public class ProductUndoCheckoutTest extends ProductLifecycleTest { @Rule |