2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.sdc.ci.tests.execute.service;
23 import static org.testng.Assert.assertEquals;
24 import static org.testng.Assert.assertTrue;
26 import java.io.FileNotFoundException;
27 import java.io.IOException;
28 import java.util.ArrayList;
29 import java.util.Arrays;
30 import java.util.List;
32 import org.codehaus.jettison.json.JSONException;
33 import org.json.JSONArray;
34 import org.junit.rules.TestName;
35 import org.openecomp.sdc.be.dao.api.ActionStatus;
36 import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
37 import org.openecomp.sdc.be.model.CapReqDef;
38 import org.openecomp.sdc.be.model.CapabilityDefinition;
39 import org.openecomp.sdc.be.model.Component;
40 import org.openecomp.sdc.be.model.ComponentInstance;
41 import org.openecomp.sdc.be.model.RequirementCapabilityRelDef;
42 import org.openecomp.sdc.be.model.RequirementDefinition;
43 import org.openecomp.sdc.be.model.User;
44 import org.openecomp.sdc.ci.tests.api.ComponentInstanceBaseTest;
45 import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails;
46 import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails;
47 import org.openecomp.sdc.ci.tests.datatypes.ComponentReqDetails;
48 import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails;
49 import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails;
50 import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum;
51 import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum;
52 import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
53 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
54 import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
55 import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils;
56 import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils;
57 import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils;
58 import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils;
59 import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils;
60 import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
61 import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils;
62 import org.openecomp.sdc.ci.tests.utils.validation.BaseValidationUtils;
63 import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils;
64 import org.slf4j.Logger;
65 import org.slf4j.LoggerFactory;
66 import org.testng.AssertJUnit;
67 import org.testng.annotations.BeforeMethod;
68 import org.testng.annotations.Test;
70 public class ServiceComponentInstanceCRUDTest extends ComponentInstanceBaseTest {
71 private static Logger log = LoggerFactory.getLogger(ServiceComponentInstanceCRUDTest.class.getName());
72 private static final String SPACE_STRING = " ";
73 private static String REQUIREMENT_NAME = "host";
74 private static String CAPABILITY_TYPE = "tosca.capabilities.Container";
76 private String reqOwnerId;
77 private String capOwnerId;
79 public ServiceComponentInstanceCRUDTest() {
80 super(new TestName(), ServiceComponentInstanceCRUDTest.class.getSimpleName());
83 @BeforeMethod(alwaysRun = true)
84 public void before() throws Exception {
89 private void createComponents() throws Exception {
90 createAtomicResource(resourceDetailsVFC_01);
91 createAtomicResource(resourceDetailsVFC_02);
92 createAtomicResource(resourceDetailsCP_01);
93 LifecycleRestUtils.changeResourceState(resourceDetailsCP_01, sdncAdminDetails, "0.1",
94 LifeCycleStatesEnum.CHECKIN);
95 createAtomicResource(resourceDetailsVL_01);
96 createAtomicResource(resourceDetailsVL_02);
97 createVF(resourceDetailsVF_01);
98 createVF(resourceDetailsVF_02);
99 createPNF(resourceDetailsPNF_01);
100 createService(serviceDetails_01);
101 certifyResource(resourceDetailsVFC_01);
102 certifyResource(resourceDetailsVFC_02);
103 RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_01, resourceDetailsVFC_01, sdncDesignerDetails);
104 ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance);
105 reqOwnerId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance);
106 createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsVFC_02, sdncDesignerDetails);
107 ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance);
108 capOwnerId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance);// should
112 // getUniqueIdOfFirstInstance
118 private void certifyResource(ResourceReqDetails resource) throws Exception {
119 changeResourceLifecycleState(resource, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
120 changeResourceLifecycleState(resource, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.STARTCERTIFICATION);
121 changeResourceLifecycleState(resource, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.CERTIFY);
124 private void changeResourceLifecycleState(ResourceReqDetails resourceDetails, String userUserId, LifeCycleStatesEnum lifeCycleStates) throws Exception {
125 RestResponse response = LifecycleRestUtils.changeResourceState(resourceDetails, userUserId, lifeCycleStates);
126 LifecycleRestUtils.checkLCS_Response(response);
129 private void changeServiceLifecycleState(ServiceReqDetails serviceDetails, User user, LifeCycleStatesEnum lifeCycleStates) throws Exception {
130 RestResponse response = LifecycleRestUtils.changeServiceState(serviceDetails, user, lifeCycleStates);
131 LifecycleRestUtils.checkLCS_Response(response);
134 private void createVFInstanceFailWithoutChangeState(ActionStatus actionStatus, List<String> variables, ResourceReqDetails vfResource, User user, int errorCode) throws Exception {
135 RestResponse createVFInstanceSuccessfullyWithoutChangeStateResp = createVFInstance(serviceDetails_01, vfResource, user);
136 checkErrorMessage(actionStatus, variables, errorCode, createVFInstanceSuccessfullyWithoutChangeStateResp);
139 private void createVFInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails vfResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException {
140 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, vfResource, user);
141 checkErrorMessage(actionStatus, variables, errorCode, createVFInstResp);
144 private void deleteVFInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails vfResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException {
145 RestResponse deleteVFInstResp = deleteVFInstance(vfResource.getUniqueId(), serviceDetails_01, user);
146 checkErrorMessage(actionStatus, variables, errorCode, deleteVFInstResp);
149 private void createAtomicResourceInstanceFailWithoutChangeState(ActionStatus actionStatus, List<String> variables, ResourceReqDetails atomicResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException {
150 RestResponse createAtomicInstResp = createAtomicInstanceForService(serviceDetails_01, atomicResource, user);
151 checkErrorMessage(actionStatus, variables, errorCode, createAtomicInstResp);
154 private void createAtomicResourceInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails atomicResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException {
155 RestResponse createAtomicInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, atomicResource, user);
156 checkErrorMessage(actionStatus, variables, errorCode, createAtomicInstResp);
159 private void deleteAtomicResourceInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails atomicResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException {
160 RestResponse deleteAtomicInstResp = deleteAtomicInstanceForService(atomicResource.getUniqueId(), serviceDetails_01, user);
161 checkErrorMessage(actionStatus, variables, errorCode, deleteAtomicInstResp);
164 private void checkErrorMessage(ActionStatus actionStatus, List<String> variables, int errorCode, RestResponse response) throws Exception {
166 log.debug(response.getResponse());
167 AssertJUnit.assertEquals(errorCode, response.getErrorCode().intValue());
168 ErrorValidationUtils.checkBodyResponseOnError(actionStatus.name(), variables, response.getResponse());
171 private RestResponse createCheckedinVFInstance(ServiceReqDetails containerDetails, ResourceReqDetails compInstOriginDetails, User modifier) throws Exception {
172 changeResourceLifecycleState(compInstOriginDetails, compInstOriginDetails.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN);
173 return createVFInstance(containerDetails, compInstOriginDetails, modifier);
176 private RestResponse createCheckedinPNFInstance(ServiceReqDetails containerDetails, ResourceReqDetails compInstOriginDetails, User modifier) throws Exception {
177 return createCheckedinVFInstance(containerDetails, compInstOriginDetails, modifier);
180 private RestResponse createCheckedinAtomicInstanceForService(ServiceReqDetails containerDetails, ResourceReqDetails compInstOriginDetails, User modifier) throws Exception {
181 changeResourceLifecycleState(compInstOriginDetails, compInstOriginDetails.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN);
182 return createAtomicInstanceForService(containerDetails, compInstOriginDetails, modifier);
185 private void createVFInstanceAndAtomicResourceInstanceWithoutCheckin(ResourceReqDetails vf, ResourceReqDetails atomicResource, User user) throws Exception {
186 RestResponse createVFInstance = createVFInstance(serviceDetails_01, vf, user);
187 ResourceRestUtils.checkCreateResponse(createVFInstance);
188 RestResponse atomicInstanceForService = createAtomicInstanceForService(serviceDetails_01, atomicResource, user);
189 ResourceRestUtils.checkCreateResponse(atomicInstanceForService);
192 private void createVFInstanceAndAtomicResourceInstanceSuccessully(ResourceReqDetails vf, ResourceReqDetails atomicResource) throws Exception, IOException {
193 createVFInstanceAndAtomicResourceInstanceSuccessully(vf, atomicResource, sdncDesignerDetails);
196 private void createVFInstanceAndAtomicResourceInstanceSuccessully(ResourceReqDetails vf, ResourceReqDetails atomicResource, User user) throws Exception, IOException {
197 changeResourceLifecycleState(vf, vf.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN);
198 changeResourceLifecycleState(atomicResource, atomicResource.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN);
199 createVFInstanceAndAtomicResourceInstanceWithoutCheckin(vf, atomicResource, user);
203 public void createVFInstanceSuccessfullyTest() throws Exception {
204 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
205 ResourceRestUtils.checkCreateResponse(createVFInstResp);
206 createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
207 ResourceRestUtils.checkCreateResponse(createVFInstResp);
208 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
212 public void createPNFInstanceSuccessfullyTest() throws Exception {
213 RestResponse createPNFInstResp = createCheckedinPNFInstance(serviceDetails_01, resourceDetailsPNF_01, sdncDesignerDetails);
214 ResourceRestUtils.checkCreateResponse(createPNFInstResp);
215 getComponentAndValidateRIs(serviceDetails_01, 1, 0);
216 // createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
217 // ResourceRestUtils.checkCreateResponse(createVFInstResp);
218 // getComponentAndValidateRIs(serviceDetails_01, 2, 0);
222 public void createVFAndAtomicInstanceTest() throws Exception {
223 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
224 ResourceRestUtils.checkCreateResponse(createVFInstResp);
225 createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
226 ResourceRestUtils.checkCreateResponse(createVFInstResp);
227 createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails);
228 ResourceRestUtils.checkCreateResponse(createVFInstResp);
229 createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_02, sdncDesignerDetails);
230 ResourceRestUtils.checkCreateResponse(createVFInstResp);
231 getComponentAndValidateRIs(serviceDetails_01, 4, 0);
235 public void createPNFAndAtomicInstanceTest() throws Exception {
236 RestResponse createPNFInstResp = createCheckedinPNFInstance(serviceDetails_01, resourceDetailsPNF_01, sdncDesignerDetails);
237 ResourceRestUtils.checkCreateResponse(createPNFInstResp);
238 RestResponse createVLInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails);
239 ResourceRestUtils.checkCreateResponse(createVLInstResp);
240 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
245 private String createCpInstance() throws Exception {
246 // Create CP instance
247 RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsPNF_01,
248 resourceDetailsCP_01, sdncDesignerDetails);
249 ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance);
250 getComponentAndValidateRIs(resourceDetailsPNF_01, 1, 0);
251 return ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance);
255 public void createPNFAndAtomicInstanceAssociatedTest() throws Exception {
256 reqOwnerId = createCpInstance();
257 RestResponse createPNFInstResp = createCheckedinPNFInstance(serviceDetails_01, resourceDetailsPNF_01, sdncDesignerDetails);
258 ResourceRestUtils.checkCreateResponse(createPNFInstResp);
259 String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createPNFInstResp);
260 RestResponse createVLInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails);
261 ResourceRestUtils.checkCreateResponse(createVLInstResp);
262 capOwnerId = ResponseParser.getUniqueIdFromResponse(createVLInstResp);
263 String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVLInstResp);
265 String capType = "tosca.capabilities.network.Linkable";
266 String reqName = "link";
268 RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
269 ResourceRestUtils.checkSuccess(getResourceResponse);
270 CapReqDef capReqDef = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), CapReqDef.class);
271 List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType);
272 List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType);
274 RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, capList, reqList);
276 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
277 getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
278 capReqDef = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), CapReqDef.class);
279 List<RequirementDefinition> list = capReqDef.getRequirements().get(capType);
280 // AssertJUnit.assertEquals("Check requirement", null, list);
281 getComponentAndValidateRIsOnly(serviceDetails_01, 2, 1);
285 public void deleteAtomicInstanceTest() throws Exception {
286 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
288 ResourceRestUtils.checkCreateResponse(createVFInstResp);
289 createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
291 ResourceRestUtils.checkCreateResponse(createVFInstResp);
292 createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails);
294 ResourceRestUtils.checkCreateResponse(createVFInstResp);
295 createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_02, sdncDesignerDetails);
297 ResourceRestUtils.checkCreateResponse(createVFInstResp);
299 String compInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
301 createVFInstResp = deleteAtomicInstanceForService(compInstId, serviceDetails_01, sdncDesignerDetails);
302 ResourceRestUtils.checkDeleteResponse(createVFInstResp);
303 getComponentAndValidateRIs(serviceDetails_01, 3, 0);
307 public void deleteVFInstanceTest() throws Exception {
308 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
310 ResourceRestUtils.checkCreateResponse(createVFInstResp);
311 createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
312 String compInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
314 ResourceRestUtils.checkCreateResponse(createVFInstResp);
315 createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
317 ResourceRestUtils.checkCreateResponse(createVFInstResp);
319 createVFInstResp = deleteVFInstance(compInstId, serviceDetails_01, sdncDesignerDetails);
320 ResourceRestUtils.checkDeleteResponse(createVFInstResp);
321 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
325 public void associateDissociateTwoVFs() throws Exception {
327 RestResponse createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
328 ResourceRestUtils.checkCreateResponse(createVFInstResp);
329 String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
330 createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
331 ResourceRestUtils.checkCreateResponse(createVFInstResp);
332 String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
334 String capType = CAPABILITY_TYPE;
335 String reqName = REQUIREMENT_NAME;
337 RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
338 ResourceRestUtils.checkSuccess(getResourceResponse);
339 CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class);
340 List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType);
341 List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType);
343 RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, capList, reqList);
345 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
346 getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
347 capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class);
348 List<RequirementDefinition> list = capReqDef.getRequirements().get(capType);
349 AssertJUnit.assertEquals("Check requirement", null, list);
350 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
352 dissociateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
353 getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
354 capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class);
355 list = capReqDef.getRequirements().get(capType);
356 AssertJUnit.assertEquals("Check requirement", 1, list.size());
357 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
360 private RequirementCapabilityRelDef getReqCapRelation(String reqCompInstId, String capCompInstId, String capType, String reqName, List<CapabilityDefinition> capList, List<RequirementDefinition> reqList) {
361 return ElementFactory.getReqCapRelation(reqCompInstId, capCompInstId, reqOwnerId, capOwnerId, capType, reqName, capList, reqList);
365 public void createResourceInstanceByDifferentDesignerTest() throws Exception {
366 createVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409);
367 createAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409);
368 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
372 public void createResourceInstanceByDifferentDesignerTest_ServiceIsCheckedin() throws Exception {
373 User designer2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2);
375 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
376 changeServiceLifecycleState(serviceDetails_01, designer2, LifeCycleStatesEnum.CHECKOUT);
378 createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01, designer2);
379 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
384 public void createResourceInstanceByTester() throws Exception {
385 createVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409);
386 createAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409);
387 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
391 public void createResourceInstanceWithNotASDCUserTest() throws Exception {
392 sdncDesignerDetails.setUserId("ab0001");
393 createVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409);
394 createAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409);
395 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
399 public void createResourceInstanceWithEmptyUserIdTest() throws Exception {
400 sdncDesignerDetails.setUserId("");
401 createVFInstanceFail(ActionStatus.MISSING_INFORMATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 403);
402 createAtomicResourceInstanceFail(ActionStatus.MISSING_INFORMATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 403);
403 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
407 public void createResourceInstanceWithEmptyServiceUidTest() throws Exception {
408 serviceDetails_01.setUniqueId("");
409 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
410 assertEquals(404, createVFInstResp.getErrorCode().intValue());
411 RestResponse createAtomicInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
412 assertEquals(404, createAtomicInstResp.getErrorCode().intValue());
416 public void createResourceInstanceWhileResourceNotExistTest() throws Exception {
417 String vfResourceUniqueId = "1234";
418 String atomicResourceUniqueId = "5678";
420 resourceDetailsVF_01.setUniqueId(vfResourceUniqueId);
421 resourceDetailsCP_01.setUniqueId(atomicResourceUniqueId);
423 createVFInstanceFailWithoutChangeState(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404);
424 createAtomicResourceInstanceFailWithoutChangeState(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404);
428 public void createResourceInstanceInServiceNotExistsTest() throws Exception {
429 serviceDetails_01.setUniqueId("1234");
430 createVFInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404);
431 createAtomicResourceInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404);
435 public void createResourceInstanceInCheckedinServiceTest() throws Exception {
436 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
438 createVFInstanceFailWithoutChangeState(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409);
439 createAtomicResourceInstanceFailWithoutChangeState(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409);
440 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
443 @Test(enabled = false)
444 public void createResourceInstance_ResourceInCheckoutStateTest() throws Exception {
445 LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN);
446 RestResponse createVFInstanceWithoutChangeStateResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
447 ComponentInstanceRestUtils.checkCreateResponse(createVFInstanceWithoutChangeStateResp);
448 RestResponse createAtomicInstWithoutCheangeStateResp = createAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
449 ComponentInstanceRestUtils.checkCreateResponse(createAtomicInstWithoutCheangeStateResp);
450 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
454 public void createResourceInstance_ResourceInCertificationRequestStateTest() throws Exception {
455 changeResourceLifecycleState(resourceDetailsVF_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
456 changeResourceLifecycleState(resourceDetailsCP_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
458 createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01);
459 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
463 public void createResourceInstance_startCertificationStateTest() throws Exception {
464 changeResourceLifecycleState(resourceDetailsVF_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
465 changeResourceLifecycleState(resourceDetailsCP_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
467 changeResourceLifecycleState(resourceDetailsVF_01, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.STARTCERTIFICATION);
468 changeResourceLifecycleState(resourceDetailsCP_01, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.STARTCERTIFICATION);
470 createVFInstanceAndAtomicResourceInstanceWithoutCheckin(resourceDetailsVF_01, resourceDetailsCP_01, sdncDesignerDetails);
471 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
476 public void createResourceInstance_certifiedStateTest() throws Exception {
477 certifyResource(resourceDetailsVF_01);
478 certifyResource(resourceDetailsCP_01);
480 createVFInstanceAndAtomicResourceInstanceWithoutCheckin(resourceDetailsVF_01, resourceDetailsCP_01, sdncDesignerDetails);
484 public void createResourceInstance_OneHasDifferentOwner() throws Exception {
485 User designer2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2);
487 ResourceReqDetails vfResource = new ResourceReqDetails(resourceDetailsVF_01, "0.1");
488 vfResource.setUniqueId(null);
489 vfResource.setName("newVF");
490 vfResource.setTags(new ArrayList<String>(Arrays.asList(vfResource.getName())));
491 createVF(vfResource, designer2);
493 RestResponse atomicInstanceForService = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
494 ResourceRestUtils.checkCreateResponse(atomicInstanceForService);
495 createVFInstanceFailWithoutChangeState(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), vfResource, designer2, 409);
497 getComponentAndValidateRIs(serviceDetails_01, 1, 0);
501 public void indexesOfVFInstancesTest() throws Exception {
502 String firstInstanceName = resourceDetailsVF_01.getName() + SPACE_STRING + "1";
503 String secondInstanceName = resourceDetailsVF_01.getName() + SPACE_STRING + "2";
504 String thirdInstanceName = resourceDetailsVF_01.getName() + SPACE_STRING + "3";
506 LifecycleRestUtils.changeResourceState(resourceDetailsVF_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN);
508 RestResponse createFirstVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
509 ResourceRestUtils.checkCreateResponse(createFirstVFInstResp);
510 RestResponse createSecondVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
511 ResourceRestUtils.checkCreateResponse(createSecondVFInstResp);
512 RestResponse createThirdVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
513 ResourceRestUtils.checkCreateResponse(createThirdVFInstResp);
515 Component service = getComponentAndValidateRIs(serviceDetails_01, 3, 0);
516 List<ComponentInstance> componentInstancesList = service.getComponentInstances();
517 for (ComponentInstance instance : componentInstancesList) {
518 String instanceName = instance.getName();
519 boolean isEqualToFirstInstanceName = instanceName.equals(firstInstanceName);
520 boolean isEqualToSecondInstanceName = instanceName.equals(secondInstanceName);
521 boolean isEqualToThirdInstanceName = instanceName.equals(thirdInstanceName);
522 assertTrue(isEqualToFirstInstanceName || isEqualToSecondInstanceName || isEqualToThirdInstanceName);
527 public void vfInstancesAmountInTwoServiceVersionsTest() throws Exception {
528 String oldServiceUniqueId = serviceDetails_01.getUniqueId();
530 createTwoCheckedinVFInstances();
532 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
533 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT);
535 String newSerivceUniqueIdAfterChangeLifecycleState = serviceDetails_01.getUniqueId();
536 getComponentAndValidateRIsAfterChangeLifecycleState(oldServiceUniqueId, serviceDetails_01, 2, 0);
539 checkServiceOldVersionRIs(oldServiceUniqueId, newSerivceUniqueIdAfterChangeLifecycleState, 2, 0);
541 // Add one more resource instance to second version of service
542 LifecycleRestUtils.changeResourceState(resourceDetailsVL_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN);
543 RestResponse createAtomicResourceInstResp = createAtomicResourceInstanceToSecondServiceVersion(newSerivceUniqueIdAfterChangeLifecycleState, resourceDetailsVL_01);
544 String atomicResourceUniqueId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstResp);
545 getComponentAndValidateRIsAfterAddingAtomicResourceInstance(oldServiceUniqueId, serviceDetails_01, 3, 0);
547 // Check that RIs are same as in the beginning - like in old version of
549 deleteCompInstReqCapFromExpected(atomicResourceUniqueId);
550 checkServiceOldVersionRIs(oldServiceUniqueId, newSerivceUniqueIdAfterChangeLifecycleState, 2, 0);
554 private void createTwoCheckedinVFInstances() throws Exception {
555 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
556 ResourceRestUtils.checkCreateResponse(createFirstVFInstResp);
557 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
558 ResourceRestUtils.checkCreateResponse(createSecondVFInstResp);
561 private void getComponentAndValidateRIsAfterAddingAtomicResourceInstance(String oldComponentUniqueId, ComponentReqDetails componentDetails, int numOfRIs, int numOfRelations) throws Exception {
562 getComponentAndValidateRIsAfterChangeLifecycleState(oldComponentUniqueId, componentDetails, numOfRIs, numOfRelations);
566 private void checkServiceOldVersionRIs(String oldUniqueId, String newUniqueId, int numOfRIs, int numOfRelations) throws IOException, Exception {
567 serviceDetails_01.setUniqueId(oldUniqueId);
568 getComponentAndValidateRIsAfterChangeLifecycleState(newUniqueId, serviceDetails_01, numOfRIs, numOfRelations);
571 private RestResponse createAtomicResourceInstanceToSecondServiceVersion(String secondServiceUniqueId, ResourceReqDetails resourceToAdd) throws Exception {
572 serviceDetails_01.setUniqueId(secondServiceUniqueId);
573 RestResponse createAtomicResourceInstResp = createAtomicInstanceForService(serviceDetails_01, resourceToAdd, sdncDesignerDetails);
574 ResourceRestUtils.checkCreateResponse(createAtomicResourceInstResp);
575 return createAtomicResourceInstResp;
579 public void createResourceInstanceToUnsupportedComponentTest() throws Exception {
580 String unsupportedType = "unsupported";
581 ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory.getComponentResourceInstance(resourceDetailsCP_01);
582 RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, sdncDesignerDetails, serviceDetails_01.getUniqueId(), unsupportedType);
583 checkErrorMessage(ActionStatus.UNSUPPORTED_ERROR, new ArrayList<String>(Arrays.asList(unsupportedType)), 400, createResourceInstanceResponse);
587 public void deleteResourceInstanceByDifferentDesignerTest() throws Exception {
589 createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01);
591 deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409);
592 deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409);
593 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
597 public void deleteResourceInstanceByDifferentDesignerTest_ServiceIsCheckedin() throws Exception {
599 String oldServiceUniqueId = serviceDetails_01.getUniqueId();
601 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
602 ResourceRestUtils.checkCreateResponse(createVFInstResp);
603 RestResponse createAtomicResourceInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
604 ResourceRestUtils.checkCreateResponse(createAtomicResourceInstResp);
606 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
607 changeServiceLifecycleState(serviceDetails_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), LifeCycleStatesEnum.CHECKOUT);
608 String newServiceUniqueId = serviceDetails_01.getUniqueId();
610 String oldVFInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
611 String newVFInstanceUniqueId = oldVFInstanceUniqueId.replaceAll(oldServiceUniqueId, serviceDetails_01.getUniqueId());
612 String oldAtomicResourceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstResp);
613 String newAtomicResourceInstanceUniqueId = oldAtomicResourceInstanceUniqueId.replaceAll(oldServiceUniqueId, serviceDetails_01.getUniqueId());
615 deleteVFInstanceAndAtomicResourceInstanceSuccessfully(newVFInstanceUniqueId, newAtomicResourceInstanceUniqueId, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2));
617 serviceDetails_01.setUniqueId(oldServiceUniqueId);
618 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
620 serviceDetails_01.setUniqueId(newServiceUniqueId);
621 updateExpectedReqCapAfterChangeLifecycleState(oldServiceUniqueId, serviceDetails_01.getUniqueId());
622 deleteCompInstReqCapFromExpected(newVFInstanceUniqueId);
623 deleteCompInstReqCapFromExpected(newAtomicResourceInstanceUniqueId);
624 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
627 private void deleteVFInstanceAndAtomicResourceInstanceSuccessfully(String vfInstanceUniqueId, String atomicResourceInstanceUniqueId) throws IOException, Exception {
628 deleteVFInstanceAndAtomicResourceInstanceSuccessfully(vfInstanceUniqueId, atomicResourceInstanceUniqueId, sdncDesignerDetails);
631 private void deleteVFInstanceAndAtomicResourceInstanceSuccessfully(String vfInstanceUniqueId, String atomicResourceInstanceUniqueId, User user) throws IOException, Exception {
632 RestResponse deleteVFInstResp = deleteVFInstance(vfInstanceUniqueId, serviceDetails_01, user);
633 ResourceRestUtils.checkDeleteResponse(deleteVFInstResp);
634 RestResponse deleteAtomicResourceInsResp = deleteAtomicInstanceForService(atomicResourceInstanceUniqueId, serviceDetails_01, user);
635 ResourceRestUtils.checkDeleteResponse(deleteAtomicResourceInsResp);
639 public void deleteResourceInstanceByTesterUserTest() throws Exception {
640 createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01);
641 deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409);
642 deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409);
643 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
647 public void deleteResourceInstanceByNotASDCUserTest() throws Exception {
648 createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01);
649 User notASDCUser = new User();
650 notASDCUser.setUserId("ab0001");
651 deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, notASDCUser, 409);
652 deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, notASDCUser, 409);
653 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
657 public void deleteResourceInstanceFromCheckedinServiceTest() throws Exception {
658 createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01);
659 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
660 deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409);
661 deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409);
662 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
666 public void deleteResourceInstanceWhileResourceCertifiedStateTest() throws Exception {
667 certifyResource(resourceDetailsVF_01);
668 certifyResource(resourceDetailsCP_01);
670 RestResponse createVFInstance = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
671 ResourceRestUtils.checkCreateResponse(createVFInstance);
672 String vfInstUniqueId = ResponseParser.getUniqueIdFromResponse(createVFInstance);
673 RestResponse atomicInstanceForService = createAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
674 ResourceRestUtils.checkCreateResponse(atomicInstanceForService);
675 String atomicInstUniqueId = ResponseParser.getUniqueIdFromResponse(atomicInstanceForService);
677 deleteVFInstanceAndAtomicResourceInstanceSuccessfully(vfInstUniqueId, atomicInstUniqueId);
679 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
682 // fail - bug DE191849
684 public void deleteNotFoundResourceInstanceTest() throws Exception, Throwable {
686 resourceDetailsVF_01.setUniqueId("1234");
687 resourceDetailsCP_01.setUniqueId("5678");
689 deleteVFInstanceFail(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404);
690 deleteAtomicResourceInstanceFail(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404);
691 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
693 // {"requestError":{"serviceException":{"messageId":"SVC4503","text":"Error:
694 // Requested '%1' service was not found.","variables":["1234"]}}}>
698 public void deleteResourceInstanceFromServiceNotFoundTest() throws Exception, Throwable {
699 serviceDetails_01.setUniqueId("1234");
700 deleteVFInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404);
701 deleteAtomicResourceInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404);
705 public void deleteResourceInstanceFromUnsupportedTypeTest() throws Exception {
706 String unsupportedType = "unsupportedType";
707 RestResponse deleteVFInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncDesignerDetails, serviceDetails_01.getUniqueId(), resourceDetailsVF_01.getUniqueId(), unsupportedType);
708 checkErrorMessage(ActionStatus.UNSUPPORTED_ERROR, new ArrayList<String>(Arrays.asList(unsupportedType)), 400, deleteVFInstanceResponse);
709 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
713 public void deleteResourceInstanceWithEmptyServiceUidTest() throws Exception, Throwable {
714 serviceDetails_01.setUniqueId("");
715 RestResponse deleteVFInstResp = deleteVFInstance(resourceDetailsVF_01.getUniqueId(), serviceDetails_01, sdncDesignerDetails);
716 assertEquals(404, deleteVFInstResp.getErrorCode().intValue());
720 public void deleteResourceInstanceWithEmptyResourceInstanceUidTest() throws Exception, Throwable {
721 RestResponse deleteVFInstResp = deleteVFInstance("", serviceDetails_01, sdncDesignerDetails);
722 assertEquals(405, deleteVFInstResp.getErrorCode().intValue());
723 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
727 public void deleteResourceInstanceWithEmptyUserIdTest() throws Exception {
728 sdncDesignerDetails.setUserId("");
729 deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409);
730 deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409);
731 getComponentAndValidateRIs(serviceDetails_01, 0, 0);
734 // fail - bug DE188994
736 public void associateResourceInstanceToResourceInstanceNotFoundTest() throws Exception, Throwable {
737 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
738 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
739 String capCompInstId = "1234";
741 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
742 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
743 List<CapabilityDefinition> capListBeforeAssociate = new ArrayList<CapabilityDefinition>();
744 CapabilityDefinition cap = new CapabilityDefinition();
745 cap.setUniqueId(capCompInstId);
746 capListBeforeAssociate.add(cap);
747 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
749 assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_NOT_FOUND, 404, new ArrayList<String>(Arrays.asList(capCompInstId)));
751 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
752 List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
753 List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
754 // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate,
755 // requirementsAfterAssoicate);
756 // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate,
757 // capabilitiesAfterAssociate);
759 getComponentAndValidateRIs(serviceDetails_01, 1, 0);
761 // "messageId": "SVC4116",
762 // "text": "Error: Invalid Content.",
765 // "9ae76786-2a9c-4409-95cb-db32885ed07f.eece8aaf-eb9f-4aff-b9a5-a11ca11de9e5.vf1001",
770 // this case is not relevant any more, it is tested as part of occurrences
772 @Test(enabled = false)
773 public void associateOnceAgainExistingRelationTest() throws Exception {
774 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
775 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
776 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
777 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
779 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
780 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
781 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
783 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
785 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
786 //////////////////////////////////////////////
787 // NO ERROR - RELATION ALREADY EXIST
788 // assocaiteInstancesFail(requirementDef, sdncDesignerDetails,
789 // ActionStatus.RESOURCE_INSTANCE_NOT_FOUND, 404, new
790 // ArrayList<String>(Arrays.asList(capCompInstId)));
791 //////////////////////////////////////////////
793 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
794 List<CapabilityDefinition> capListAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
795 List<RequirementDefinition> reqListAfterAssociate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
797 // AssertJUnit.assertEquals("Check requirement", null,
798 // reqListAfterAssociate);
799 // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate,
800 // capListAfterAssociate);
802 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
804 // "messageId": "SVC4119",
805 // "text": "Error: No relation found between resource instances
806 // \u0027%1\u0027 and \u0027%2\u0027 for requirement \u0027%3\u0027.",
815 public void associateInstancesInMissingServiceTest() throws Exception {
816 serviceDetails_01.setUniqueId("1234");
817 RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef();
818 assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.SERVICE_NOT_FOUND, 404, new ArrayList<String>(Arrays.asList("")));
822 public void associateAfterDeletingResourceTest() throws Exception {
823 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
824 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
825 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
826 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
828 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
829 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
830 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
832 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
834 ResourceRestUtils.deleteResource(resourceDetailsVF_01.getUniqueId(), sdncDesignerDetails.getUserId());
836 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
837 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
838 List<CapabilityDefinition> capListAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
840 // for (CapabilityDefinition capabilityDefinition :
841 // capListBeforeAssociate) {
842 // if (capabilityDefinition.getType().equals(CAPABILITY_TYPE)){
843 // capabilityDefinition.setMinOccurrences("0");
847 // List<RequirementDefinition> reqListAfterAssociate =
848 // capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
850 // AssertJUnit.assertEquals("Check requirement", null,
851 // reqListAfterAssociate);
853 // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate,
854 // capListAfterAssociate);
856 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
860 public void associateInstancesInCheckedinServiceTest() throws Exception {
861 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
862 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
863 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
864 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
866 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
867 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
868 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
870 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
872 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
874 assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
876 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
877 List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
878 List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
879 AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, requirementsAfterAssoicate);
880 AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, capabilitiesAfterAssociate);
882 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
885 // fail - bug DE188994
887 public void associateAfterCheckoutAllInstancesTest() throws Exception {
888 String firstVFUniqueId = resourceDetailsVF_01.getUniqueId();
889 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
890 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
891 String secondVFUniqueId = resourceDetailsVF_02.getUniqueId();
892 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
893 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
895 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
896 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
897 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
899 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
901 changeResourceLifecycleState(resourceDetailsVF_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CHECKOUT);
902 changeResourceLifecycleState(resourceDetailsVF_02, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CHECKOUT);
904 requirementDef.setFromNode(requirementDef.getFromNode().replaceAll(firstVFUniqueId, resourceDetailsVF_01.getUniqueId()));
905 requirementDef.setToNode(requirementDef.getToNode().replaceAll(secondVFUniqueId, resourceDetailsVF_02.getUniqueId()));
907 assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
909 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
910 List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
911 List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
912 // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate,
913 // requirementsAfterAssoicate);
914 // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate,
915 // capabilitiesAfterAssociate);
917 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
919 // "messageId": "SVC4116",
920 // "text": "Error: Invalid Content.",
922 // "e9dcea15-ce27-4381-a554-4278973cefb1.d0b3affd-cf92-4626-adfe-961b44103924.vf1001",
923 // "e9dcea15-ce27-4381-a554-4278973cefb1.d0b3affd-cf92-4626-adfe-961b44103924.vf1001",
930 public void associateInstancesByDifferentUsersTest() throws Exception {
931 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
932 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
933 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
934 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
936 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
937 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
938 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
940 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
942 assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
943 assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
944 assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
945 assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.OPS), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
946 assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
948 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
949 List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
950 List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
951 AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, requirementsAfterAssoicate);
952 AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, capabilitiesAfterAssociate);
954 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
957 private void assocaiteInstancesFail(RequirementCapabilityRelDef requirementDef, User user, ActionStatus actionStatus, int errorCode, List<String> variables) throws IOException, Exception {
958 RestResponse associateInstancesResp = ComponentInstanceRestUtils.associateInstances(requirementDef, user, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE);
959 checkErrorMessage(actionStatus, variables, errorCode, associateInstancesResp);
962 private void dissoicateInstancesFail(RequirementCapabilityRelDef requirementDef, User user, ActionStatus actionStatus, int errorCode, List<String> variables) throws IOException, Exception {
963 RestResponse dissoicateInstancesResp = ComponentInstanceRestUtils.dissociateInstances(requirementDef, user, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE);
964 checkErrorMessage(actionStatus, variables, errorCode, dissoicateInstancesResp);
968 public void associateWithMissingServiceUidTest() throws Exception {
969 RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef();
970 serviceDetails_01.setUniqueId("");
971 RestResponse associateInstancesResp = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE);
972 assertEquals(404, associateInstancesResp.getErrorCode().intValue());
975 // fail - bug DE191824
977 public void associateNotCompitableReqCapTest() throws Exception {
978 RestResponse createFirstAtomicResourceInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
979 String reqCompInstName = ResponseParser.getNameFromResponse(createFirstAtomicResourceInstResp);
980 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstAtomicResourceInstResp);
981 RestResponse createSecondAtomicResourceInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_02, sdncDesignerDetails);
982 String capCompInstName = ResponseParser.getNameFromResponse(createSecondAtomicResourceInstResp);
983 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondAtomicResourceInstResp);
985 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
986 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
987 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
989 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
991 List<String> variables = new ArrayList<String>();
992 variables.add(reqCompInstName);
993 variables.add(capCompInstName);
994 variables.add(REQUIREMENT_NAME);
996 assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_MATCH_NOT_FOUND, 404, variables);
998 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
999 List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
1000 List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
1001 // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate,
1002 // requirementsAfterAssoicate);
1003 // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate,
1004 // capabilitiesAfterAssociate);
1006 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
1008 // {"requestError":{"serviceException":{"messageId":"SVC4119","text":"Error:
1009 // No relation found between resource instances '%1' and '%2' for
1010 // requirement '%3'.","variables":["CP100 1","VL200 2","host"]}}}>
1014 public void associateInstancesInTwoServiceVersionsTest() throws Exception {
1015 String oldServiceUniqueId = serviceDetails_01.getUniqueId();
1016 RestResponse createFirstVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1017 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
1018 RestResponse createSecondVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1019 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
1021 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1022 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
1023 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
1025 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1026 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
1027 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
1029 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
1030 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT);
1031 String secondServiceUniqueId = serviceDetails_01.getUniqueId();
1033 serviceDetails_01.setUniqueId(oldServiceUniqueId);
1034 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
1036 updateCapabilitiesOwnerId(oldServiceUniqueId, capListBeforeAssociate, secondServiceUniqueId);
1037 updateExpectedReqCapAfterChangeLifecycleState(oldServiceUniqueId, secondServiceUniqueId);
1038 CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1039 List<CapabilityDefinition> capListAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
1040 List<RequirementDefinition> reqListAfterAssociate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
1041 // AssertJUnit.assertEquals("Check requirement", null,
1042 // reqListAfterAssociate);
1043 // AssertJUnit.assertEquals("Check capabilities",
1044 // capListBeforeAssociate, capListAfterAssociate);
1045 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
1047 RestResponse createThirdVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1048 String reqSecondCompInstId = ResponseParser.getUniqueIdFromResponse(createThirdVFInstResp);
1050 CapReqDef capReqDefBeforeSeconderyAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1051 List<CapabilityDefinition> capListBeforeSeconderyAssociate = capReqDefBeforeSeconderyAssociate.getCapabilities().get(CAPABILITY_TYPE);
1052 List<RequirementDefinition> reqListBeforeSeconderyAssociate = capReqDefBeforeSeconderyAssociate.getRequirements().get(CAPABILITY_TYPE);
1054 capCompInstId = capCompInstId.replaceAll(oldServiceUniqueId, secondServiceUniqueId);
1055 RequirementCapabilityRelDef secondRequirementDef = getReqCapRelation(reqSecondCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeSeconderyAssociate, reqListBeforeSeconderyAssociate);
1056 associateComponentInstancesForService(secondRequirementDef, serviceDetails_01, sdncDesignerDetails);
1058 CapReqDef capReqDefAfterSeconderyAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1059 List<CapabilityDefinition> capListAfterSeconderyAssociate = capReqDefAfterSeconderyAssociate.getCapabilities().get(CAPABILITY_TYPE);
1060 List<RequirementDefinition> reqListAfterSeconderyAssociate = capReqDefAfterSeconderyAssociate.getRequirements().get(CAPABILITY_TYPE);
1061 // AssertJUnit.assertEquals("Check requirement", null,
1062 // reqListAfterSeconderyAssociate);
1063 // AssertJUnit.assertEquals("Check capabilities",
1064 // capListBeforeAssociate, capListAfterSeconderyAssociate);
1065 getComponentAndValidateRIs(serviceDetails_01, 3, 2);
1068 private void updateCapabilitiesOwnerId(String oldUniqueId, List<CapabilityDefinition> capList, String newUniqueId) {
1069 serviceDetails_01.setUniqueId(newUniqueId);
1070 for (CapabilityDefinition cap : capList) {
1071 String oldOwnerId = cap.getOwnerId();
1072 String newOwnerId = oldOwnerId.replaceAll(oldUniqueId, newUniqueId);
1073 cap.setOwnerId(newOwnerId);
1078 public void dissociateRelationNotFoundTest() throws Exception {
1079 createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1080 String reqCompInstId = "1234";
1081 createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1082 String capCompInstId = "4567";
1084 CapReqDef capReqDef = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1085 List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(CAPABILITY_TYPE);
1086 List<RequirementDefinition> reqList = capReqDef.getRequirements().get(CAPABILITY_TYPE);
1088 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capList, reqList);
1090 List<String> variables = new ArrayList<String>();
1091 variables.add(reqCompInstId);
1092 variables.add(capCompInstId);
1093 variables.add(REQUIREMENT_NAME);
1094 dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND, 404, variables);
1096 CapReqDef capReqDefAfterDissociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1097 List<CapabilityDefinition> capListAfterDissociate = capReqDefAfterDissociate.getCapabilities().get(CAPABILITY_TYPE);
1098 List<RequirementDefinition> reqListAfterDissociate = capReqDefAfterDissociate.getRequirements().get(CAPABILITY_TYPE);
1100 AssertJUnit.assertEquals("Check requirement", 1, reqListAfterDissociate.size());
1101 AssertJUnit.assertEquals("Check requirement", reqList, reqListAfterDissociate);
1102 AssertJUnit.assertEquals("Check capabilities", capList, capListAfterDissociate);
1104 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
1109 public void dissociateRelationInServiceNotFoundTest() throws Exception {
1110 String uniqueId = "1234";
1111 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1112 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
1113 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1114 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
1116 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1117 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
1118 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
1120 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1122 serviceDetails_01.setUniqueId(uniqueId);
1123 dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.SERVICE_NOT_FOUND, 404, new ArrayList<String>(Arrays.asList("")));
1128 public void dissoicateRelationWhileInstanceNotFound() throws Exception {
1129 String capUniqueId = "1234";
1131 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1132 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
1133 createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1134 String capCompInstId = capUniqueId;
1136 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1137 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
1138 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
1140 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1142 List<String> variables = new ArrayList<String>();
1143 variables.add(reqCompInstId);
1144 variables.add(capCompInstId);
1145 variables.add(REQUIREMENT_NAME);
1146 dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND, 404, variables);
1148 CapReqDef capReqDefAfterDissociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1149 List<CapabilityDefinition> capListAfterDissociate = capReqDefAfterDissociate.getCapabilities().get(CAPABILITY_TYPE);
1150 List<RequirementDefinition> reqListAfterDissociate = capReqDefAfterDissociate.getRequirements().get(CAPABILITY_TYPE);
1151 AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, reqListAfterDissociate);
1152 AssertJUnit.assertEquals("Check capabilities", capListBeforeAssociate, capListAfterDissociate);
1154 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
1158 public void dissociateWhileServiceCheckedinTest() throws Exception {
1159 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
1160 RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef();
1161 dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
1165 public void dissoicateWithEmptyUserIdHeaderTest() throws Exception {
1166 sdncDesignerDetails.setUserId("");
1167 RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef();
1168 dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>());
1172 public void dissociateWithMissingUidOfServiceTest() throws Exception {
1173 serviceDetails_01.setUniqueId("");
1174 RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef();
1175 RestResponse dissociateResp = ComponentInstanceRestUtils.dissociateInstances(requirementDef, sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE);
1176 assertEquals(404, dissociateResp.getErrorCode().intValue());
1180 public void relationDeletedAfterDeletingResourceInstanceTest() throws Exception {
1181 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1182 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
1183 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1184 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
1186 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1187 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
1188 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
1190 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1192 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
1193 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
1195 RestResponse deleteVFInstance = deleteVFInstance(reqCompInstId, serviceDetails_01, sdncDesignerDetails);
1196 ComponentInstanceRestUtils.checkDeleteResponse(deleteVFInstance);
1197 getComponentAndValidateRIs(serviceDetails_01, 1, 0);
1201 public void relationNotFoundInSecondVersionAfterDissociateTest() throws Exception {
1202 String oldContainerUniqueIdToReplace = serviceDetails_01.getUniqueId();
1203 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1204 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
1205 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1206 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
1208 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1209 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
1210 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
1212 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1214 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
1215 dissociateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
1217 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
1218 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT);
1220 updateExpectedReqCapAfterChangeLifecycleState(oldContainerUniqueIdToReplace, serviceDetails_01.getUniqueId());
1221 getComponentAndValidateRIs(serviceDetails_01, 2, 0);
1225 public void dissociateOnceAgainTest() throws Exception {
1226 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1227 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
1228 String reqCompInsName = ResponseParser.convertComponentInstanceResponseToJavaObject(createFirstVFInstResp.getResponse()).getName();
1229 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1230 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
1231 String capCompInstName = ResponseParser.convertComponentInstanceResponseToJavaObject(createSecondVFInstResp.getResponse()).getName();
1233 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1234 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
1235 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
1237 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1239 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
1240 dissociateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
1242 List<String> variables = new ArrayList<String>();
1243 variables.add(reqCompInsName);
1244 variables.add(capCompInstName);
1245 variables.add(REQUIREMENT_NAME);
1247 dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND, 404, variables);
1250 // fail - bug : DE191707
1252 public void associateTwoRelations_CheckinCheckout_DissoicateOneRelationInSecondVersion() throws Exception {
1253 String oldContainerUniqueIdToReplace = serviceDetails_01.getUniqueId();
1254 RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1255 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp);
1256 RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1257 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp);
1258 RestResponse createThirdVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1259 String secondReqCompInstId = ResponseParser.getUniqueIdFromResponse(createThirdVFInstResp);
1261 CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1262 List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE);
1263 List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE);
1265 RequirementCapabilityRelDef requirementDefFirstRelation = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1266 RequirementCapabilityRelDef requirementDefSecondRelation = getReqCapRelation(secondReqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate);
1268 associateComponentInstancesForService(requirementDefFirstRelation, serviceDetails_01, sdncDesignerDetails);
1269 associateComponentInstancesForService(requirementDefSecondRelation, serviceDetails_01, sdncDesignerDetails);
1270 getComponentAndValidateRIs(serviceDetails_01, 3, 2);
1272 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
1273 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT);
1274 String newContainerUniqueId = serviceDetails_01.getUniqueId();
1276 // check if dissoicate of old relation is possibile
1277 // dissoicateInstancesFail(requirementDefFirstRelation,
1278 // sdncDesignerDetails, actionStatus, errorCode, variables);
1279 getComponentAndValidateRIs(serviceDetails_01, 3, 2);
1281 requirementDefFirstRelation.setFromNode(reqCompInstId.replaceAll(oldContainerUniqueIdToReplace, newContainerUniqueId));
1282 requirementDefFirstRelation.setToNode(reqCompInstId.replaceAll(oldContainerUniqueIdToReplace, newContainerUniqueId));
1284 dissociateComponentInstancesForService(requirementDefFirstRelation, serviceDetails_01, sdncDesignerDetails);
1286 // updateCapabilitiesOwnerId(oldContainerUniqueIdToReplace,
1287 // capListBeforeAssociate, newContainerUniqueId);
1288 // CapReqDef capReqDefAfterAssociate =
1289 // ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails,
1290 // serviceDetails_01);
1291 // List<CapabilityDefinition> capListAfterAssociate =
1292 // capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE);
1293 // List<RequirementDefinition> reqListAfterAssociate =
1294 // capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE);
1295 // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate,
1296 // reqListAfterAssociate);
1297 // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate,
1298 // capListAfterAssociate);
1299 updateExpectedReqCapAfterChangeLifecycleState(oldContainerUniqueIdToReplace, serviceDetails_01.getUniqueId());
1300 getComponentAndValidateRIs(serviceDetails_01, 3, 1);
1304 public void createResourceInstancesAndUpdatedServiceMetadataTest() throws Exception, Exception {
1305 serviceDetails_02.setUniqueId(serviceDetails_01.getUniqueId());
1306 createTwoCheckedinVFInstances();
1307 LifecycleRestUtils.changeResourceState(resourceDetailsCP_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN);
1308 createVFInstanceAndAtomicResourceInstanceWithoutCheckin(resourceDetailsVF_01, resourceDetailsCP_01, sdncDesignerDetails);
1309 RestResponse updateServiceResp = ServiceRestUtils.updateService(serviceDetails_02, sdncDesignerDetails);
1310 ServiceRestUtils.checkSuccess(updateServiceResp);
1311 getComponentAndValidateRIs(serviceDetails_01, 4, 0);
1314 @Test(enabled = false)
1315 public void forAcceptanceUserStory() throws Exception {
1316 RestResponse createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1317 ResourceRestUtils.checkCreateResponse(createVFInstResp);
1318 String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
1319 createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1320 ResourceRestUtils.checkCreateResponse(createVFInstResp);
1321 String capCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp);
1323 String capType = CAPABILITY_TYPE;
1324 String reqName = REQUIREMENT_NAME;
1326 RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1327 ResourceRestUtils.checkSuccess(getResourceResponse);
1328 CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class);
1329 List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType);
1330 List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType);
1332 RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, capType, reqName, capList, reqList);
1334 associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails);
1335 getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01);
1336 capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class);
1337 List<RequirementDefinition> list = capReqDef.getRequirements().get(capType);
1338 AssertJUnit.assertEquals("Check requirement", null, list);
1340 serviceDetails_02.setUniqueId(serviceDetails_01.getUniqueId());
1341 RestResponse updateServiceResp = ServiceRestUtils.updateService(serviceDetails_02, sdncDesignerDetails);
1342 ServiceRestUtils.checkSuccess(updateServiceResp);
1343 changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN);
1344 getComponentAndValidateRIs(serviceDetails_01, 2, 1);
1348 public void testUnsatisfiedCpReqInService() throws Exception {
1350 // Certify all the needed atomic resources
1351 RestResponse response = LifecycleRestUtils.certifyResource(resourceDetailsCP_01);
1352 ResourceRestUtils.checkSuccess(response);
1354 ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType());
1355 response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId());
1356 ResourceRestUtils.checkSuccess(response);
1357 response = LifecycleRestUtils.certifyResource(resourceDetailsVF_02);
1358 ResourceRestUtils.checkSuccess(response);
1359 capOwnerId = getUniqueIdOfFirstInstanceFromResponse(response);
1361 RestResponse createAtomicResourceInstance = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails);
1362 ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance);
1363 String vfCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance);
1365 createAtomicResourceInstance = createAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails);
1366 ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance);
1367 String compInstName = ResponseParser.getNameFromResponse(createAtomicResourceInstance);
1368 String cpCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance);
1370 RestResponse submitForTesting = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST);
1371 String[] variables = new String[] { serviceDetails_01.getName(), "service", "CP (Connection Point)", compInstName, "requirement", "tosca.capabilities.network.Bindable", "fulfilled" };
1372 BaseValidationUtils.checkErrorResponse(submitForTesting, ActionStatus.REQ_CAP_NOT_SATISFIED_BEFORE_CERTIFICATION, variables);
1374 fulfillCpRequirement(serviceDetails_01, cpCompInstId, vfCompInstId, capOwnerId, sdncDesignerDetails, ComponentTypeEnum.SERVICE);
1376 submitForTesting = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST);
1377 BaseValidationUtils.checkSuccess(submitForTesting);
1381 public void getVFInstanceSuccessfullyTest() throws Exception {
1382 RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1383 ResourceRestUtils.checkCreateResponse(createVFInstResp);
1384 System.out.println("instance successfuly created");
1385 RestResponse getInstancesResponce = ComponentInstanceRestUtils.getComponentInstances(ComponentTypeEnum.SERVICE, serviceDetails_01.getUniqueId(), sdncDesignerDetails);
1387 for (int i = 0; i < 1500; i++) {
1388 createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails);
1389 ResourceRestUtils.checkCreateResponse(createVFInstResp);
1390 System.out.println("instance " + i + "successfuly created");
1393 getInstancesResponce = ComponentInstanceRestUtils.getComponentInstances(ComponentTypeEnum.SERVICE, serviceDetails_01.getUniqueId(), sdncDesignerDetails);
1395 BaseValidationUtils.checkSuccess(getInstancesResponce);
1399 private String getUniqueIdOfFirstInstanceFromResponse(RestResponse response) {
1401 JSONArray value = ResponseParser.getListFromJson(response, "componentInstances");
1402 return ResponseParser.getValueFromJsonResponse(value.get(0).toString(), "uniqueId");
1403 } catch (Exception e) {