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.resource;
23 import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS;
24 import static org.testng.AssertJUnit.assertEquals;
25 import static org.testng.AssertJUnit.assertNotNull;
27 import java.util.ArrayList;
28 import java.util.Arrays;
29 import java.util.HashMap;
30 import java.util.List;
33 import org.junit.Rule;
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.datatypes.enums.ResourceTypeEnum;
38 import org.openecomp.sdc.be.model.LifecycleStateEnum;
39 import org.openecomp.sdc.be.model.Resource;
40 import org.openecomp.sdc.be.model.User;
41 import org.openecomp.sdc.ci.tests.api.ComponentBaseTest;
42 import org.openecomp.sdc.ci.tests.api.Urls;
43 import org.openecomp.sdc.ci.tests.config.Config;
44 import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails;
45 import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails;
46 import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails;
47 import org.openecomp.sdc.ci.tests.datatypes.ResourceRespJavaObject;
48 import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails;
49 import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo;
50 import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum;
51 import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum;
52 import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum;
53 import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum;
54 import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
55 import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject;
56 import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum;
57 import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest;
58 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
59 import org.openecomp.sdc.ci.tests.utils.DbUtils;
60 import org.openecomp.sdc.ci.tests.utils.Utils;
61 import org.openecomp.sdc.ci.tests.utils.general.Convertor;
62 import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
63 import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils;
64 import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils;
65 import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils;
66 import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils;
67 import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils;
68 import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
69 import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils;
70 import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils;
71 import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils;
72 import org.openecomp.sdc.ci.tests.utils.validation.ResourceValidationUtils;
73 import org.slf4j.Logger;
74 import org.slf4j.LoggerFactory;
75 import org.testng.annotations.Test;
77 import com.google.gson.Gson;
83 public class CreateResourceApiTest extends ComponentBaseTest {
85 private static Logger log = LoggerFactory.getLogger(CreateResourceApiTest.class.getName());
87 String contentTypeHeaderData = "application/json";
88 String acceptHeaderDate = "application/json";
89 String resourceVersion = "0.1";
92 public static TestName name = new TestName();
94 public CreateResourceApiTest() {
95 super(name, CreateResourceApiTest.class.getName());
99 public void createResourceTest() throws Exception {
102 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
104 // ResourceReqDetails resourceDetails = new
105 // ResourceReqDetails(resourceName, description, resourceTags, category,
106 // derivedFrom, vendorName, vendorRelease, contactId, icon);
107 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource();
108 String resourceName = resourceDetails.getName();
109 resourceDetails.setTags(Arrays.asList(resourceName, resourceName, resourceName, resourceName, "tag2", "tag2"));
111 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
114 assertNotNull("check response object is not null after create resource", createResponse);
115 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
116 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
119 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
121 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
122 resourceRespJavaObject.setAbstractt("false");
123 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
125 // validate get response
126 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails,
127 resourceDetails.getUniqueId());
128 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
131 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
132 .constructFieldsForAuditValidation(resourceDetails, resourceVersion);
133 String auditAction = "Create";
134 expectedResourceAuditJavaObject.setAction(auditAction);
135 expectedResourceAuditJavaObject.setPrevVersion("");
136 expectedResourceAuditJavaObject.setPrevState("");
137 expectedResourceAuditJavaObject.setStatus("201");
138 expectedResourceAuditJavaObject.setDesc("OK");
140 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
144 public void createResourceNonDefaultResourceTypeTest() throws Exception {
147 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
149 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource();
150 String resourceType = ResourceTypeEnum.CP.toString();
151 resourceDetails.setResourceType(resourceType);
153 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
156 assertNotNull("check response object is not null after create resource", createResponse);
157 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
158 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
161 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
163 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
164 resourceRespJavaObject.setAbstractt("false");
165 resourceRespJavaObject.setResourceType(resourceType);
166 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
168 // validate get response
169 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails,
170 resourceDetails.getUniqueId());
171 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
174 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
175 .constructFieldsForAuditValidation(resourceDetails, resourceVersion);
176 String auditAction = "Create";
177 expectedResourceAuditJavaObject.setAction(auditAction);
178 expectedResourceAuditJavaObject.setPrevVersion("");
179 expectedResourceAuditJavaObject.setPrevState("");
180 expectedResourceAuditJavaObject.setStatus("201");
181 expectedResourceAuditJavaObject.setDesc("OK");
183 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
187 public void createResourceTest_costAndLicenseType() throws Exception {
191 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
193 // set resource details
194 String resourceName = "CISCO4572";
195 String description = "description";
196 // Duplicate tags are allowed and should be de-duplicated by the server
198 ArrayList<String> resourceTags = new ArrayList<String>();
199 resourceTags.add(resourceName);
200 resourceTags.add(resourceName);
201 resourceTags.add(resourceName);
202 resourceTags.add("tag2");
203 resourceTags.add("tag2");
204 String category = ServiceCategoriesEnum.VOIP.getValue();
205 ArrayList<String> derivedFrom = new ArrayList<String>();
206 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
207 String vendorName = "Oracle";
208 String vendorRelease = "1.5";
209 String contactId = "jh0003";
210 String icon = "myICON";
212 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
213 derivedFrom, vendorName, vendorRelease, contactId, icon);
214 // Adding cost and licenseType
215 resourceDetails.setCost("12355.345");
216 resourceDetails.setLicenseType("User");
219 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
222 assertNotNull("check response object is not null after create resource", createResponse);
223 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
224 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
227 String resourceVersion = "0.1";
228 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
230 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
231 resourceRespJavaObject.setAbstractt("false");
232 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
234 // validate get response
236 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails,
237 resourceDetails.getUniqueId());
238 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
244 public void createResourceTest_CostIsMissing() throws Exception {
246 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
247 // set resource details
248 String resourceName = "CISCO4572";
249 String description = "description";
250 // Duplicate tags are allowed and should be de-duplicated by the server
252 ArrayList<String> resourceTags = new ArrayList<String>();
253 resourceTags.add(resourceName);
254 resourceTags.add(resourceName);
255 resourceTags.add(resourceName);
256 resourceTags.add("tag2");
257 resourceTags.add("tag2");
258 String category = ServiceCategoriesEnum.VOIP.getValue();
259 ArrayList<String> derivedFrom = new ArrayList<String>();
260 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
261 String vendorName = "Oracle";
262 String vendorRelease = "1.5";
263 String contactId = "jh0003";
264 String icon = "myICON";
266 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
267 derivedFrom, vendorName, vendorRelease, contactId, icon);
268 // Adding cost and licenseType
269 // resourceDetails.setCost("12355.345");
270 resourceDetails.setLicenseType("User");
273 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
274 assertNotNull("check response object is not null after create resource", createResponse);
275 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
276 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
279 String resourceVersion = "0.1";
280 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
282 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
283 resourceRespJavaObject.setAbstractt("false");
284 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
286 // validate get response
287 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails,
288 resourceDetails.getUniqueId());
289 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
293 public void createResourceTest_LicenseTypeMissing() throws Exception {
295 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
296 // set resource details
297 String resourceName = "CISCO4572";
298 String description = "description";
299 // Duplicate tags are allowed and should be de-duplicated by the server
301 ArrayList<String> resourceTags = new ArrayList<String>();
302 resourceTags.add(resourceName);
303 resourceTags.add(resourceName);
304 resourceTags.add(resourceName);
305 resourceTags.add("tag2");
306 resourceTags.add("tag2");
307 String category = ServiceCategoriesEnum.VOIP.getValue();
308 ArrayList<String> derivedFrom = new ArrayList<String>();
309 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
310 String vendorName = "Oracle";
311 String vendorRelease = "1.5";
312 String contactId = "jh0003";
313 String icon = "myICON";
315 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
316 derivedFrom, vendorName, vendorRelease, contactId, icon);
317 // Adding cost and licenseType
318 resourceDetails.setCost("12355.345");
319 // resourceDetails.setLicenseType("User");
322 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
323 assertNotNull("check response object is not null after create resource", createResponse);
324 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
325 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
328 String resourceVersion = "0.1";
329 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
331 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
332 resourceRespJavaObject.setAbstractt("false");
333 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
335 // validate get response
336 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails,
337 resourceDetails.getUniqueId());
338 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
342 public void createResourceTest_LicenseType_Installation() throws Exception {
344 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
345 // set resource details
346 String resourceName = "CISCO4572";
347 String description = "description";
348 // Duplicate tags are allowed and should be de-duplicated by the server
350 ArrayList<String> resourceTags = new ArrayList<String>();
351 resourceTags.add(resourceName);
352 resourceTags.add(resourceName);
353 resourceTags.add(resourceName);
354 resourceTags.add("tag2");
355 resourceTags.add("tag2");
356 String category = ServiceCategoriesEnum.VOIP.getValue();
357 ArrayList<String> derivedFrom = new ArrayList<String>();
358 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
359 String vendorName = "Oracle";
360 String vendorRelease = "1.5";
361 String contactId = "jh0003";
362 String icon = "myICON";
364 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
365 derivedFrom, vendorName, vendorRelease, contactId, icon);
366 // Adding cost and licenseType
367 resourceDetails.setCost("99999.999");
368 resourceDetails.setLicenseType("Installation");
371 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
372 assertNotNull("check response object is not null after create resource", createResponse);
373 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
374 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
377 String resourceVersion = "0.1";
378 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
380 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
381 resourceRespJavaObject.setAbstractt("false");
382 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
384 // validate get response
385 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails,
386 resourceDetails.getUniqueId());
387 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
391 public void createResourceTest_LicenseType_CPU() throws Exception {
393 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
394 // set resource details
395 String resourceName = "CISCO4572";
396 String description = "description";
397 // Duplicate tags are allowed and should be de-duplicated by the server
399 ArrayList<String> resourceTags = new ArrayList<String>();
400 resourceTags.add(resourceName);
401 resourceTags.add(resourceName);
402 resourceTags.add(resourceName);
403 resourceTags.add("tag2");
404 resourceTags.add("tag2");
405 String category = ServiceCategoriesEnum.VOIP.getValue();
406 ArrayList<String> derivedFrom = new ArrayList<String>();
407 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
408 String vendorName = "Oracle";
409 String vendorRelease = "1.5";
410 String contactId = "jh0003";
411 String icon = "myICON";
413 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
414 derivedFrom, vendorName, vendorRelease, contactId, icon);
415 // Adding cost and licenseType
416 resourceDetails.setCost("0.0");
417 resourceDetails.setLicenseType("CPU");
420 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
421 assertNotNull("check response object is not null after create resource", createResponse);
422 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
423 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
426 String resourceVersion = "0.1";
427 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
429 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
430 resourceRespJavaObject.setAbstractt("false");
431 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
433 // validate get response
434 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails,
435 resourceDetails.getUniqueId());
436 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
440 public void createResourceTest_LicenseType_Uppercase() throws Exception {
442 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
443 // set resource details
444 String resourceName = "CISCO4572";
445 String description = "description";
446 // Duplicate tags are allowed and should be de-duplicated by the server
448 ArrayList<String> resourceTags = new ArrayList<String>();
449 resourceTags.add(resourceName);
450 resourceTags.add(resourceName);
451 resourceTags.add(resourceName);
452 resourceTags.add("tag2");
453 resourceTags.add("tag2");
454 String category = ServiceCategoriesEnum.VOIP.getValue();
455 ArrayList<String> derivedFrom = new ArrayList<String>();
456 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
457 String vendorName = "Oracle";
458 String vendorRelease = "1.5";
459 String contactId = "jh0003";
460 String icon = "myICON";
462 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
463 derivedFrom, vendorName, vendorRelease, contactId, icon);
464 // Adding cost and licenseType
465 resourceDetails.setCost("0.0");
466 resourceDetails.setLicenseType("INSTALLATION");
469 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
470 assertNotNull("check response object is not null after create resource", createResponse);
471 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
472 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
473 assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage());
477 public void createResourceTest_LicenseType_Invalid() throws Exception {
479 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
480 // set resource details
481 String resourceName = "CISCO4572";
482 String description = "description";
483 // Duplicate tags are allowed and should be de-duplicated by the server
485 ArrayList<String> resourceTags = new ArrayList<String>();
486 resourceTags.add(resourceName);
487 resourceTags.add(resourceName);
488 resourceTags.add(resourceName);
489 resourceTags.add("tag2");
490 resourceTags.add("tag2");
491 String category = ServiceCategoriesEnum.VOIP.getValue();
492 ArrayList<String> derivedFrom = new ArrayList<String>();
493 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
494 String vendorName = "Oracle";
495 String vendorRelease = "1.5";
496 String contactId = "jh0003";
497 String icon = "myICON";
499 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
500 derivedFrom, vendorName, vendorRelease, contactId, icon);
501 // Adding cost and licenseType
502 resourceDetails.setCost("0.0");
503 resourceDetails.setLicenseType("CPUUU");
506 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
507 assertNotNull("check response object is not null after create resource", createResponse);
508 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
509 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
510 assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage());
514 public void createResourceTest_CostValidation_noNumeric() throws Exception {
516 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
517 // set resource details
518 String resourceName = "CISCO4572";
519 String description = "description";
520 // Duplicate tags are allowed and should be de-duplicated by the server
522 ArrayList<String> resourceTags = new ArrayList<String>();
523 resourceTags.add(resourceName);
524 resourceTags.add(resourceName);
525 resourceTags.add(resourceName);
526 resourceTags.add("tag2");
527 resourceTags.add("tag2");
528 String category = ServiceCategoriesEnum.VOIP.getValue();
529 ArrayList<String> derivedFrom = new ArrayList<String>();
530 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
531 String vendorName = "Oracle";
532 String vendorRelease = "1.5";
533 String contactId = "jh0003";
534 String icon = "myICON";
536 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
537 derivedFrom, vendorName, vendorRelease, contactId, icon);
538 // Adding cost and licenseType
539 resourceDetails.setCost("12355.345");
540 resourceDetails.setLicenseType("User");
541 resourceDetails.setCost("12355.34b");
543 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
544 assertNotNull("check response object is not null after create resource", createResponse);
545 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
546 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
547 assertEquals("Check response code after create resource", "Bad Request",
548 createResponse.getResponseMessage().toString());
553 public void createResourceTest_CostValidation_valueLength() throws Exception {
555 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
556 // set resource details
557 String resourceName = "CISCO4572";
558 String description = "description";
559 // Duplicate tags are allowed and should be de-duplicated by the server
561 ArrayList<String> resourceTags = new ArrayList<String>();
562 resourceTags.add(resourceName);
563 resourceTags.add(resourceName);
564 resourceTags.add(resourceName);
565 resourceTags.add("tag2");
566 resourceTags.add("tag2");
567 String category = ServiceCategoriesEnum.VOIP.getValue();
568 ArrayList<String> derivedFrom = new ArrayList<String>();
569 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
570 String vendorName = "Oracle";
571 String vendorRelease = "1.5";
572 String contactId = "jh0003";
573 String icon = "myICON";
574 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
575 derivedFrom, vendorName, vendorRelease, contactId, icon);
576 // Adding cost and licenseType
577 resourceDetails.setCost("12355.345");
578 resourceDetails.setLicenseType("User");
580 // Adding invalid cost
581 resourceDetails.setCost("12355.3434");
583 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
584 assertNotNull("check response object is not null after create resource", createResponse);
585 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
586 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
587 assertEquals("Check response code after create resource", "Bad Request",
588 createResponse.getResponseMessage().toString());
592 public void createResourceTest_CostValidation_PriceLimitations() throws Exception {
594 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
595 // set resource details
596 String resourceName = "CISCO4572";
597 String description = "description";
598 // Duplicate tags are allowed and should be de-duplicated by the server
600 ArrayList<String> resourceTags = new ArrayList<String>();
601 resourceTags.add(resourceName);
602 resourceTags.add(resourceName);
603 resourceTags.add(resourceName);
604 resourceTags.add("tag2");
605 resourceTags.add("tag2");
606 String category = ServiceCategoriesEnum.VOIP.getValue();
607 ArrayList<String> derivedFrom = new ArrayList<String>();
608 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
609 String vendorName = "Oracle";
610 String vendorRelease = "1.5";
611 String contactId = "jh0003";
612 String icon = "myICON";
613 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
614 derivedFrom, vendorName, vendorRelease, contactId, icon);
615 // Adding cost and licenseType
616 resourceDetails.setCost("12355.345");
617 resourceDetails.setLicenseType("User");
619 // Adding invalid cost
620 RestResponse createResponse;
623 resourceDetails.setCost("000000.000");
624 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
625 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
626 assertNotNull("check response object is not null after create resource", createResponse);
627 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
628 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
629 assertEquals("Check response code after create resource", "Bad Request",
630 createResponse.getResponseMessage().toString());
633 * resourceDetails.setCost("0550.457"); createResponse =
634 * resourceUtils.createResource(resourceDetails, sdncModifierDetails);
635 * assertNotNull("check response object is not null after create resource"
637 * assertNotNull("check error code exists in response after create resource"
638 * , createResponse.getErrorCode());
639 * assertEquals("Check response code after create resource", 400,
640 * createResponse.getErrorCode().intValue());
641 * assertEquals("Check response code after create resource",
642 * "Bad Request", createResponse.getResponseMessage().toString());
645 resourceDetails.setCost("1");
646 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
647 assertNotNull("check response object is not null after create resource", createResponse);
648 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
649 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
650 assertEquals("Check response code after create resource", "Bad Request",
651 createResponse.getResponseMessage().toString());
653 resourceDetails.setCost("123555.340");
654 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
655 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
656 assertNotNull("check response object is not null after create resource", createResponse);
657 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
658 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
659 assertEquals("Check response code after create resource", "Bad Request",
660 createResponse.getResponseMessage().toString());
662 resourceDetails.setCost("123.4570");
663 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
664 assertNotNull("check response object is not null after create resource", createResponse);
665 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
666 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
667 assertEquals("Check response code after create resource", "Bad Request",
668 createResponse.getResponseMessage().toString());
670 resourceDetails.setCost("123555.30");
671 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
672 assertNotNull("check response object is not null after create resource", createResponse);
673 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
674 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
675 assertEquals("Check response code after create resource", "Bad Request",
676 createResponse.getResponseMessage().toString());
678 resourceDetails.setCost("123.5550");
679 createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
680 assertNotNull("check response object is not null after create resource", createResponse);
681 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
682 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
683 assertEquals("Check response code after create resource", "Bad Request",
684 createResponse.getResponseMessage().toString());
689 public void createResourceTest_CostIsNull() throws Exception {
691 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
692 // set resource details
693 String resourceName = "CISCO4572";
694 String description = "description";
695 // Duplicate tags are allowed and should be de-duplicated by the server
697 ArrayList<String> resourceTags = new ArrayList<String>();
698 resourceTags.add(resourceName);
699 resourceTags.add(resourceName);
700 resourceTags.add(resourceName);
701 resourceTags.add("tag2");
702 resourceTags.add("tag2");
703 String category = ServiceCategoriesEnum.VOIP.getValue();
704 ArrayList<String> derivedFrom = new ArrayList<String>();
705 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
706 String vendorName = "Oracle";
707 String vendorRelease = "1.5";
708 String contactId = "jh0003";
709 String icon = "myICON";
711 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
712 derivedFrom, vendorName, vendorRelease, contactId, icon);
713 // Adding cost and licenseType
714 resourceDetails.setCost("12355.345");
715 resourceDetails.setLicenseType("User");
716 resourceDetails.setCost("");
718 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
719 assertNotNull("check response object is not null after create resource", createResponse);
720 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
721 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
722 assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage());
727 public void createResourceTest_LicenseIsNull() throws Exception {
729 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
730 // set resource details
731 String resourceName = "CISCO4572";
732 String description = "description";
733 // Duplicate tags are allowed and should be de-duplicated by the server
735 ArrayList<String> resourceTags = new ArrayList<String>();
736 resourceTags.add(resourceName);
737 resourceTags.add(resourceName);
738 resourceTags.add(resourceName);
739 resourceTags.add("tag2");
740 resourceTags.add("tag2");
741 String category = ServiceCategoriesEnum.VOIP.getValue();
742 ArrayList<String> derivedFrom = new ArrayList<String>();
743 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
744 String vendorName = "Oracle";
745 String vendorRelease = "1.5";
746 String contactId = "jh0003";
747 String icon = "myICON";
749 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
750 derivedFrom, vendorName, vendorRelease, contactId, icon);
751 // Adding cost and licenseType
752 resourceDetails.setCost("12355.345");
753 resourceDetails.setLicenseType("User");
754 resourceDetails.setLicenseType("");
756 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
757 assertNotNull("check response object is not null after create resource", createResponse);
758 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
759 assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue());
760 assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage());
765 public void createResourceTest_uri_methods() throws Exception {
768 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
770 // set resource details
771 ResourceReqDetails resourceDetails = createRandomResource();
773 Config config = Utils.getConfig();
775 Map<String, String> headersMap = new HashMap<String, String>();
776 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
777 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate);
778 headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId());
780 Gson gson = new Gson();
781 String userBodyJson = gson.toJson(resourceDetails);
782 log.debug(userBodyJson);
783 HttpRequest http = new HttpRequest();
784 String url = String.format(Urls.CREATE_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort());
786 RestResponse createResourceResponse2 = http.httpSendByMethod(url, "PUT", userBodyJson, headersMap);
789 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.NOT_ALLOWED.name());
791 assertNotNull("check response object is not null after create resource", createResourceResponse2);
792 assertNotNull("check error code exists in response after create resource",
793 createResourceResponse2.getErrorCode());
794 assertEquals("Check response code after create resource", errorInfo.getCode(),
795 createResourceResponse2.getErrorCode());
797 List<String> variables = Arrays.asList();
798 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables,
799 createResourceResponse2.getResponse());
803 private ResourceReqDetails createRandomResource() {
804 String resourceName = "CISCO4";
805 String description = "description";
806 ArrayList<String> resourceTags = new ArrayList<String>();
807 resourceTags.add(resourceName);
808 String category = ServiceCategoriesEnum.VOIP.getValue();
809 ArrayList<String> derivedFrom = new ArrayList<String>();
810 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
811 String vendorName = "Oracle";
812 String vendorRelease = "1.5";
813 String contactId = "jh0003";
814 String icon = "myICON";
816 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
817 derivedFrom, vendorName, vendorRelease, contactId, icon);
818 return resourceDetails;
822 public void createResource_role_tester() throws Exception {
825 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER);
827 ResourceReqDetails resourceDetails2 = createRandomResource();
830 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
833 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name());
835 assertNotNull("check response object is not null after create resouce", restResponse2);
836 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
837 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
839 List<String> variables = Arrays.asList();
840 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables,
841 restResponse2.getResponse());
844 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
845 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
846 String auditAction = "Create";
847 expectedResourceAuditJavaObject.setAction(auditAction);
848 expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.TESTER.getUserId());
849 expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.TESTER.getUserName());
850 expectedResourceAuditJavaObject.setPrevState("");
851 expectedResourceAuditJavaObject.setCurrState("");
852 expectedResourceAuditJavaObject.setPrevVersion("");
853 expectedResourceAuditJavaObject.setCurrVersion("");
854 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
856 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
857 expectedResourceAuditJavaObject.setDesc(auditDesc);
859 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
863 // TODO DE171450(to check)
865 public void createResource_role_DESIGNER() throws Exception {
867 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER);
868 ResourceReqDetails resourceDetails = createRandomResource();
869 RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
871 assertNotNull("check response object is not null after create resource", restResponse);
872 assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode());
874 "Check response code after create resource, response message is: " + restResponse.getResponseMessage(),
875 201, restResponse.getErrorCode().intValue());
880 public void createResource_missing_header() throws Exception {
883 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
885 ResourceReqDetails resourceDetails = createRandomResource();
887 // set null in UserId header
888 sdncModifierDetails.setUserId(null);
892 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
896 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name());
898 assertNotNull("check response object is not null after create resouce", restResponse2);
899 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
900 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
902 List<String> variables = Arrays.asList();
903 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), variables,
904 restResponse2.getResponse());
908 // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject =
909 // resourceUtils.constructFieldsForAuditValidation(resourceDetails,resourceVersion);
911 // String auditAction="Create";
912 // expectedResourceAuditJavaObject.setAction(auditAction);
913 // expectedResourceAuditJavaObject.setModifierUid("null null");
914 // expectedResourceAuditJavaObject.setModifierName("null null");
915 // expectedResourceAuditJavaObject.setPrevState("");
916 // expectedResourceAuditJavaObject.setCurrState("");
917 // expectedResourceAuditJavaObject.setPrevVersion("");
918 // expectedResourceAuditJavaObject.setCurrVersion("");
919 // expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
921 // String auditDesc =
922 // AuditValidationUtils.buildAuditDescription(errorInfo, variables);
923 // expectedResourceAuditJavaObject.setDesc(auditDesc);
925 // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject,
927 // TODO: yshlosberg enable back
932 public void createResource_existing_resource() throws Exception {
935 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
937 // ResourceReqDetails resourceDetails = createRandomResource();
938 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource();
941 RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
944 assertNotNull("check response object is not null after create resource", restResponse);
945 assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode());
946 assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue());
948 // set resource details
949 ResourceReqDetails resourceDetails2 = ElementFactory.getDefaultResource();
952 DbUtils.cleanAllAudits();
955 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
959 ErrorInfo errorInfo = ErrorValidationUtils
960 .parseErrorConfigYaml(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name());
962 assertNotNull("check response object is not null after create resouce", restResponse2);
963 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
964 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
966 List<String> variables = Arrays.asList("Resource", resourceDetails2.getName());
967 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name(), variables,
968 restResponse2.getResponse());
972 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
973 .constructFieldsForAuditValidation(resourceDetails, resourceVersion);
975 String auditAction = "Create";
976 expectedResourceAuditJavaObject.setAction(auditAction);
977 expectedResourceAuditJavaObject.setCurrState("");
978 expectedResourceAuditJavaObject.setCurrVersion("");
979 expectedResourceAuditJavaObject.setPrevState("");
980 expectedResourceAuditJavaObject.setPrevVersion("");
981 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
983 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
984 expectedResourceAuditJavaObject.setDesc(auditDesc);
986 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
991 public void createResourceTest_without_category() throws Exception {
995 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
998 // set resource details
999 String resourceName = "CISCO4";
1000 String description = "description";
1001 ArrayList<String> resourceTags = new ArrayList<String>();
1002 resourceTags.add(resourceName);
1003 String category = ServiceCategoriesEnum.VOIP.getValue();
1004 ArrayList<String> derivedFrom = new ArrayList<String>();
1005 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1006 String vendorName = "Oracle";
1007 String vendorRelease = "1.5";
1008 String contactId = "jh0003";
1009 String icon = "myICON";
1011 // set resource details
1014 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
1015 derivedFrom, vendorName, vendorRelease, contactId, icon);
1019 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
1021 // validate response
1023 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CATEGORY.name());
1025 assertNotNull("check response object is not null after create resouce", restResponse2);
1026 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1027 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1029 List<String> variables = Arrays.asList("Resource");
1030 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CATEGORY.name(), variables,
1031 restResponse2.getResponse());
1035 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1036 .constructFieldsForAuditValidation(resourceDetails, resourceVersion);
1038 String auditAction = "Create";
1039 expectedResourceAuditJavaObject.setAction(auditAction);
1040 expectedResourceAuditJavaObject.setCurrState("");
1041 expectedResourceAuditJavaObject.setCurrVersion("");
1042 expectedResourceAuditJavaObject.setPrevState("");
1043 expectedResourceAuditJavaObject.setPrevVersion("");
1044 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1046 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1047 expectedResourceAuditJavaObject.setDesc(auditDesc);
1049 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1054 public void createResourceTest_empty_category() throws Exception {
1058 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1060 // set resource details
1061 String resourceName = "CISCO4";
1062 String description = "description";
1063 ArrayList<String> resourceTags = new ArrayList<String>();
1064 resourceTags.add(resourceName);
1065 String category = ServiceCategoriesEnum.VOIP.getValue();
1066 ArrayList<String> derivedFrom = new ArrayList<String>();
1067 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1068 String vendorName = "Oracle";
1069 String vendorRelease = "1.5";
1070 String contactId = "jh0003";
1071 String icon = "myICON";
1073 // set resource details
1076 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1077 derivedFrom, vendorName, vendorRelease, contactId, icon);
1081 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1083 // validate response
1085 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CATEGORY.name());
1087 assertNotNull("check response object is not null after create resouce", restResponse2);
1088 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1089 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1091 List<String> variables = Arrays.asList("Resource");
1092 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CATEGORY.name(), variables,
1093 restResponse2.getResponse());
1097 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1098 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1100 String auditAction = "Create";
1101 expectedResourceAuditJavaObject.setAction(auditAction);
1102 expectedResourceAuditJavaObject.setCurrState("");
1103 expectedResourceAuditJavaObject.setCurrVersion("");
1104 expectedResourceAuditJavaObject.setPrevState("");
1105 expectedResourceAuditJavaObject.setPrevVersion("");
1106 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1108 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1109 expectedResourceAuditJavaObject.setDesc(auditDesc);
1111 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1116 public void createResourceTest_without_tags() throws Exception {
1120 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1123 // set resource details
1124 String resourceName = "CISCO4";
1125 String description = "description";
1126 ArrayList<String> resourceTags = new ArrayList<String>();
1128 String category = ServiceCategoriesEnum.VOIP.getValue();
1129 ArrayList<String> derivedFrom = new ArrayList<String>();
1130 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1131 String vendorName = "Oracle";
1132 String vendorRelease = "1.5";
1133 String contactId = "jh0003";
1134 String icon = "myICON";
1136 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1137 derivedFrom, vendorName, vendorRelease, contactId, icon);
1140 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1142 // validate response
1144 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_TAGS.name());
1146 assertNotNull("check response object is not null after create resouce", restResponse2);
1147 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1148 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1150 List<String> variables = Arrays.asList();
1151 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_TAGS.name(), variables,
1152 restResponse2.getResponse());
1156 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1157 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1159 String auditAction = "Create";
1160 expectedResourceAuditJavaObject.setAction(auditAction);
1161 expectedResourceAuditJavaObject.setCurrState("");
1162 expectedResourceAuditJavaObject.setCurrVersion("");
1163 expectedResourceAuditJavaObject.setPrevState("");
1164 expectedResourceAuditJavaObject.setPrevVersion("");
1165 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1167 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1168 expectedResourceAuditJavaObject.setDesc(auditDesc);
1170 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1174 // TODO DE171450(to check)
1176 public void createResourceTest_with_multiple_tags() throws Exception {
1179 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1181 // // set resource details
1182 // String resourceName = "CISCO4";
1183 // String description = "description";
1184 // ArrayList<String> resourceTags = new ArrayList<String>();
1185 // resourceTags.add(resourceName);
1186 // resourceTags.add("tag2");
1187 // String category = ResourceServiceCategoriesEnum.VOIP.getValue();
1188 // ArrayList<String> derivedFrom = new ArrayList<String>();
1189 // derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1190 // String vendorName = "Oracle";
1191 // String vendorRelease = "1.5";
1192 // String icon = "myICON";
1193 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource();
1194 resourceDetails.setTags(Arrays.asList(resourceDetails.getName(), "tag2"));
1197 RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
1199 // validate response
1200 assertNotNull("check response object is not null after create resource", restResponse);
1201 assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode());
1202 assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue());
1207 public void createResourceTest_empty_tag() throws Exception {
1211 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1213 // set resource details
1214 String resourceName = "CISCO4";
1215 String description = "description";
1216 ArrayList<String> resourceTags = new ArrayList<String>();
1217 resourceTags.add("");
1218 String category = ServiceCategoriesEnum.VOIP.getValue();
1219 ArrayList<String> derivedFrom = new ArrayList<String>();
1220 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1221 String vendorName = "Oracle";
1222 String vendorRelease = "1.5";
1223 String contactId = "jh0003";
1224 String icon = "myICON";
1226 ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category,
1227 derivedFrom, vendorName, vendorRelease, contactId, icon);
1230 RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
1232 // validate response
1233 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_FIELD_FORMAT.name());
1235 assertNotNull("check response object is not null after create resouce", restResponse);
1236 assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode());
1237 assertEquals("Check response code after create resource", errorInfo.getCode(), restResponse.getErrorCode());
1239 List<String> variables = Arrays.asList("Resource", "tag");
1240 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_FIELD_FORMAT.name(), variables,
1241 restResponse.getResponse());
1244 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1245 .constructFieldsForAuditValidation(resourceDetails, resourceVersion);
1247 String auditAction = "Create";
1248 expectedResourceAuditJavaObject.setAction(auditAction);
1249 expectedResourceAuditJavaObject.setPrevState("");
1250 expectedResourceAuditJavaObject.setPrevVersion("");
1251 expectedResourceAuditJavaObject.setCurrState("");
1252 expectedResourceAuditJavaObject.setCurrVersion("");
1253 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1255 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1256 expectedResourceAuditJavaObject.setDesc(auditDesc);
1258 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1263 public void createResourceTest_with_empty_vendorName() throws Exception {
1265 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1267 // set resource details
1268 String resourceName = "CISCO4";
1269 String description = "description";
1270 ArrayList<String> resourceTags = new ArrayList<String>();
1271 resourceTags.add(resourceName);
1272 String category = ServiceCategoriesEnum.VOIP.getValue();
1273 ArrayList<String> derivedFrom = new ArrayList<String>();
1274 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1275 String vendorName = "Oracle";
1276 String vendorRelease = "1.5";
1277 String contactId = "jh0003";
1278 String icon = "myICON";
1280 // set resource details
1283 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1284 derivedFrom, vendorName, vendorRelease, contactId, icon);
1287 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1289 // validate response
1290 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_NAME.name());
1292 assertNotNull("check response object is not null after create resouce", restResponse2);
1293 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1294 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1296 List<String> variables = Arrays.asList();
1297 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_NAME.name(), variables,
1298 restResponse2.getResponse());
1301 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1302 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1303 String auditAction = "Create";
1304 expectedResourceAuditJavaObject.setAction(auditAction);
1305 expectedResourceAuditJavaObject.setPrevState("");
1306 expectedResourceAuditJavaObject.setPrevVersion("");
1307 expectedResourceAuditJavaObject.setCurrState("");
1308 expectedResourceAuditJavaObject.setCurrVersion("");
1309 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1311 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1312 expectedResourceAuditJavaObject.setDesc(auditDesc);
1314 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1319 public void createResourceTest_without_vendorName() throws Exception {
1321 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1323 // set resource details
1324 String resourceName = "CISCO4";
1325 String description = "description";
1326 ArrayList<String> resourceTags = new ArrayList<String>();
1327 resourceTags.add(resourceName);
1328 String category = ServiceCategoriesEnum.VOIP.getValue();
1329 ArrayList<String> derivedFrom = new ArrayList<String>();
1330 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1331 String vendorName = "Oracle";
1332 String vendorRelease = "1.5";
1333 String contactId = "jh0003";
1334 String icon = "myICON";
1336 // set resource details
1339 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1340 derivedFrom, vendorName, vendorRelease, contactId, icon);
1344 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1346 // validate response
1347 assertNotNull("check response object is not null after create resource", restResponse2);
1348 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1349 assertEquals("Check response code after create resource", 400, restResponse2.getErrorCode().intValue());
1351 List<String> variables = Arrays.asList();
1352 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_NAME.name(), variables,
1353 restResponse2.getResponse());
1358 public void createResourceTest_with_empty_vendorRelease() throws Exception {
1360 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1362 // set resource details
1363 String resourceName = "CISCO4";
1364 String description = "description";
1365 ArrayList<String> resourceTags = new ArrayList<String>();
1366 resourceTags.add(resourceName);
1367 String category = ServiceCategoriesEnum.VOIP.getValue();
1368 ArrayList<String> derivedFrom = new ArrayList<String>();
1369 derivedFrom.add("root");
1370 String vendorName = "Oracle";
1371 String vendorRelease = "1.5";
1372 String contactId = "jh0003";
1373 String icon = "myICON";
1375 // set resource details
1378 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1379 derivedFrom, vendorName, vendorRelease, contactId, icon);
1383 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1385 // validate response
1387 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_RELEASE.name());
1389 assertNotNull("check response object is not null after create resouce", restResponse2);
1390 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1391 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1393 List<String> variables = Arrays.asList();
1394 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_RELEASE.name(), variables,
1395 restResponse2.getResponse());
1399 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1400 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1402 String auditAction = "Create";
1403 expectedResourceAuditJavaObject.setAction(auditAction);
1404 expectedResourceAuditJavaObject.setPrevState("");
1405 expectedResourceAuditJavaObject.setPrevVersion("");
1406 expectedResourceAuditJavaObject.setCurrState("");
1407 expectedResourceAuditJavaObject.setCurrVersion("");
1408 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1410 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1411 expectedResourceAuditJavaObject.setDesc(auditDesc);
1413 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1418 public void createResourceTest_without_vendorRelease() throws Exception {
1420 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1422 // set resource details
1423 String resourceName = "CISCO4";
1424 String description = "description";
1425 ArrayList<String> resourceTags = new ArrayList<String>();
1426 resourceTags.add(resourceName);
1427 String category = ServiceCategoriesEnum.VOIP.getValue();
1428 ArrayList<String> derivedFrom = new ArrayList<String>();
1429 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1430 String vendorName = "Oracle";
1431 String vendorRelease = "1.5";
1432 String contactId = "jh0003";
1433 String icon = "myICON";
1435 // set resource details
1436 vendorRelease = null;
1438 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1439 derivedFrom, vendorName, vendorRelease, contactId, icon);
1443 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1445 // validate response
1447 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_RELEASE.name());
1449 assertNotNull("check response object is not null after create resouce", restResponse2);
1450 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1451 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1453 List<String> variables = Arrays.asList();
1454 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_RELEASE.name(), variables,
1455 restResponse2.getResponse());
1459 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1460 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1462 String auditAction = "Create";
1463 expectedResourceAuditJavaObject.setAction(auditAction);
1464 expectedResourceAuditJavaObject.setPrevState("");
1465 expectedResourceAuditJavaObject.setPrevVersion("");
1466 expectedResourceAuditJavaObject.setCurrState("");
1467 expectedResourceAuditJavaObject.setCurrVersion("");
1468 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1470 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1471 expectedResourceAuditJavaObject.setDesc(auditDesc);
1473 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1478 public void createResourceTest_with_empty_contactId() throws Exception {
1480 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1482 // set resource details
1483 String resourceName = "CISCO4";
1484 String description = "description";
1485 ArrayList<String> resourceTags = new ArrayList<String>();
1486 resourceTags.add(resourceName);
1487 String category = ServiceCategoriesEnum.VOIP.getValue();
1488 ArrayList<String> derivedFrom = new ArrayList<String>();
1489 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1490 String vendorName = "Oracle";
1491 String vendorRelease = "1.5";
1492 String contactId = "jh0003";
1493 String icon = "myICON";
1495 // set resource details
1498 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1499 derivedFrom, vendorName, vendorRelease, contactId, icon);
1503 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1505 // validate response
1507 ErrorInfo errorInfo = ErrorValidationUtils
1508 .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CONTACT.name());
1510 assertNotNull("check response object is not null after create resouce", restResponse2);
1511 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1512 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1514 List<String> variables = Arrays.asList("Resource");
1515 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CONTACT.name(), variables,
1516 restResponse2.getResponse());
1520 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1521 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1523 String auditAction = "Create";
1524 expectedResourceAuditJavaObject.setAction(auditAction);
1525 expectedResourceAuditJavaObject.setPrevState("");
1526 expectedResourceAuditJavaObject.setPrevVersion("");
1527 expectedResourceAuditJavaObject.setCurrState("");
1528 expectedResourceAuditJavaObject.setCurrVersion("");
1529 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1531 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1532 expectedResourceAuditJavaObject.setDesc(auditDesc);
1534 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1539 public void createResourceTest_without_contactId() throws Exception {
1541 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1543 // set resource details
1544 String resourceName = "CISCO4";
1545 String description = "description";
1546 ArrayList<String> resourceTags = new ArrayList<String>();
1547 resourceTags.add(resourceName);
1548 String category = ServiceCategoriesEnum.VOIP.getValue();
1549 ArrayList<String> derivedFrom = new ArrayList<String>();
1550 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1551 String vendorName = "Oracle";
1552 String vendorRelease = "1.5";
1553 String contactId = "jh0003";
1554 String icon = "myICON";
1556 // set resource details
1559 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1560 derivedFrom, vendorName, vendorRelease, contactId, icon);
1564 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1566 // validate response
1568 ErrorInfo errorInfo = ErrorValidationUtils
1569 .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CONTACT.name());
1571 assertNotNull("check response object is not null after create resouce", restResponse2);
1572 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1573 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1575 List<String> variables = Arrays.asList("Resource");
1576 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CONTACT.name(), variables,
1577 restResponse2.getResponse());
1581 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1582 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1584 String auditAction = "Create";
1585 expectedResourceAuditJavaObject.setAction(auditAction);
1586 expectedResourceAuditJavaObject.setPrevState("");
1587 expectedResourceAuditJavaObject.setPrevVersion("");
1588 expectedResourceAuditJavaObject.setCurrState("");
1589 expectedResourceAuditJavaObject.setCurrVersion("");
1590 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1592 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1593 expectedResourceAuditJavaObject.setDesc(auditDesc);
1595 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1600 public void createResourceTest_with_empty_icon() throws Exception {
1602 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1604 // set resource details
1605 String resourceName = "CISCO4";
1606 String description = "description";
1607 ArrayList<String> resourceTags = new ArrayList<String>();
1608 resourceTags.add(resourceName);
1609 String category = ServiceCategoriesEnum.VOIP.getValue();
1610 ArrayList<String> derivedFrom = new ArrayList<String>();
1611 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1612 String vendorName = "Oracle";
1613 String vendorRelease = "1.5";
1614 String contactId = "jh0003";
1615 String icon = "myICON";
1617 // set resource details
1620 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1621 derivedFrom, vendorName, vendorRelease, contactId, icon);
1625 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1627 // validate response
1629 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_ICON.name());
1631 assertNotNull("check response object is not null after create resouce", restResponse2);
1632 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1633 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1635 List<String> variables = Arrays.asList("Resource");
1636 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_ICON.name(), variables,
1637 restResponse2.getResponse());
1641 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1642 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1644 String auditAction = "Create";
1645 expectedResourceAuditJavaObject.setAction(auditAction);
1646 expectedResourceAuditJavaObject.setPrevState("");
1647 expectedResourceAuditJavaObject.setPrevVersion("");
1648 expectedResourceAuditJavaObject.setCurrState("");
1649 expectedResourceAuditJavaObject.setCurrVersion("");
1650 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1652 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1653 expectedResourceAuditJavaObject.setDesc(auditDesc);
1655 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1660 public void createResourceTest_without_icon() throws Exception {
1662 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1664 // set resource details
1665 String resourceName = "CISCO4";
1666 String description = "description";
1667 ArrayList<String> resourceTags = new ArrayList<String>();
1668 resourceTags.add(resourceName);
1669 String category = ServiceCategoriesEnum.VOIP.getValue();
1670 ArrayList<String> derivedFrom = new ArrayList<String>();
1671 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1672 String vendorName = "Oracle";
1673 String vendorRelease = "1.5";
1674 String contactId = "jh0003";
1675 String icon = "myICON";
1677 // set resource details
1680 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1681 derivedFrom, vendorName, vendorRelease, contactId, icon);
1685 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1687 // validate response
1689 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_ICON.name());
1691 assertNotNull("check response object is not null after create resouce", restResponse2);
1692 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1693 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1695 List<String> variables = Arrays.asList("Resource");
1696 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_ICON.name(), variables,
1697 restResponse2.getResponse());
1701 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1702 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1704 String auditAction = "Create";
1705 expectedResourceAuditJavaObject.setAction(auditAction);
1706 expectedResourceAuditJavaObject.setPrevState("");
1707 expectedResourceAuditJavaObject.setPrevVersion("");
1708 expectedResourceAuditJavaObject.setCurrState("");
1709 expectedResourceAuditJavaObject.setCurrVersion("");
1710 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1712 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1713 expectedResourceAuditJavaObject.setDesc(auditDesc);
1715 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1720 public void createResourceTest_with_empty_description() throws Exception {
1722 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1724 // set resource details
1725 String resourceName = "CISCO4";
1726 String description = "description";
1727 ArrayList<String> resourceTags = new ArrayList<String>();
1728 resourceTags.add(resourceName);
1729 String category = ServiceCategoriesEnum.VOIP.getValue();
1730 ArrayList<String> derivedFrom = new ArrayList<String>();
1731 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1732 String vendorName = "Oracle";
1733 String vendorRelease = "1.5";
1734 String contactId = "jh0003";
1735 String icon = "myICON";
1737 // set resource details
1740 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1741 derivedFrom, vendorName, vendorRelease, contactId, icon);
1745 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1747 // validate response
1749 ErrorInfo errorInfo = ErrorValidationUtils
1750 .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name());
1752 assertNotNull("check response object is not null after create resouce", restResponse2);
1753 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1754 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1756 List<String> variables = Arrays.asList("Resource");
1757 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), variables,
1758 restResponse2.getResponse());
1762 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1763 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1765 String auditAction = "Create";
1766 expectedResourceAuditJavaObject.setAction(auditAction);
1767 expectedResourceAuditJavaObject.setPrevState("");
1768 expectedResourceAuditJavaObject.setPrevVersion("");
1769 expectedResourceAuditJavaObject.setCurrState("");
1770 expectedResourceAuditJavaObject.setCurrVersion("");
1771 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1773 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1774 expectedResourceAuditJavaObject.setDesc(auditDesc);
1776 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1781 public void createResourceTest_without_description() throws Exception {
1783 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1785 // set resource details
1786 String resourceName = "CISCO4";
1787 String description = "description";
1788 ArrayList<String> resourceTags = new ArrayList<String>();
1789 resourceTags.add(resourceName);
1790 String category = ServiceCategoriesEnum.VOIP.getValue();
1791 ArrayList<String> derivedFrom = new ArrayList<String>();
1792 derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());
1793 String vendorName = "Oracle";
1794 String vendorRelease = "1.5";
1795 String contactId = "jh0003";
1796 String icon = "myICON";
1798 // set resource details
1801 ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category,
1802 derivedFrom, vendorName, vendorRelease, contactId, icon);
1806 RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails);
1808 // validate response
1810 ErrorInfo errorInfo = ErrorValidationUtils
1811 .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name());
1813 assertNotNull("check response object is not null after create resouce", restResponse2);
1814 assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode());
1815 assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode());
1817 List<String> variables = Arrays.asList("Resource");
1818 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), variables,
1819 restResponse2.getResponse());
1823 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1824 .constructFieldsForAuditValidation(resourceDetails2, resourceVersion);
1826 String auditAction = "Create";
1827 expectedResourceAuditJavaObject.setAction(auditAction);
1828 expectedResourceAuditJavaObject.setPrevState("");
1829 expectedResourceAuditJavaObject.setPrevVersion("");
1830 expectedResourceAuditJavaObject.setCurrState("");
1831 expectedResourceAuditJavaObject.setCurrVersion("");
1832 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1834 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1835 expectedResourceAuditJavaObject.setDesc(auditDesc);
1837 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1842 public void createAndGetResourceByNameAndVersion() throws Exception {
1844 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1845 ResourceReqDetails resourceDetailsComp = ElementFactory.getDefaultResource("testresourceComp",
1846 NormativeTypesEnum.COMPUTE, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, sdncModifierDetails.getUserId());
1849 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetailsComp, sdncModifierDetails);
1850 // validate response
1851 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
1853 String resourceVersion = "0.1";
1854 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetailsComp,
1856 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
1857 resourceRespJavaObject.setAbstractt("false");
1858 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
1860 // validate get response
1861 RestResponse resourceGetResponse = ResourceRestUtils.getResourceByNameAndVersion(
1862 sdncModifierDetails.getUserId(), resourceDetailsComp.getName(), resourceDetailsComp.getVersion());
1863 assertEquals("Check response code after delete resource", 200, resourceGetResponse.getErrorCode().intValue());
1864 // Resource resource =
1865 // ResourceRestUtils.parseResourceFromListResp(resourceGetResponse);
1866 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
1867 // resourceDetailsComp.setUniqueId(resource.getUniqueId());
1872 public void createResourceResourceTypeNotExistsTest() throws Exception {
1875 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1877 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource();
1878 String resourceType = "NOT EXISTS";
1879 resourceDetails.setResourceType(resourceType);
1881 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
1883 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name());
1885 assertNotNull("check response object is not null after create resouce", createResponse);
1886 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
1887 assertEquals("Check response code after create service", errorInfo.getCode(), createResponse.getErrorCode());
1889 List<String> variables = new ArrayList<>();
1890 ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), variables,
1891 createResponse.getResponse());
1894 ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor
1895 .constructFieldsForAuditValidation(resourceDetails, resourceVersion);
1896 String auditAction = "Create";
1897 expectedResourceAuditJavaObject.setAction(auditAction);
1898 expectedResourceAuditJavaObject.setPrevState("");
1899 expectedResourceAuditJavaObject.setPrevVersion("");
1900 expectedResourceAuditJavaObject.setCurrState("");
1901 expectedResourceAuditJavaObject.setCurrVersion("");
1902 expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1904 String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1905 expectedResourceAuditJavaObject.setDesc(auditDesc);
1906 AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false);
1910 public void createResourceResourceTypeEmptyTest() throws Exception {
1913 User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1915 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource();
1916 // String resourceType = "";
1917 // resourceDetails.setResourceType(resourceType);
1919 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails);
1921 // ErrorInfo errorInfo =
1922 // ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name());
1924 // assertNotNull("check response object is not null after create
1925 // resouce", createResponse);
1926 // assertNotNull("check error code exists in response after create
1927 // resource", createResponse.getErrorCode());
1928 // assertEquals("Check response code after create service",
1929 // errorInfo.getCode(), createResponse.getErrorCode());
1931 // List<String> variables = new ArrayList<>();
1932 // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(),
1933 // variables, createResponse.getResponse());
1935 // // validate audit
1936 // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject =
1937 // Convertor.constructFieldsForAuditValidation(resourceDetails,
1938 // resourceVersion);
1939 // String auditAction = "Create";
1940 // expectedResourceAuditJavaObject.setAction(auditAction);
1941 // expectedResourceAuditJavaObject.setPrevState("");
1942 // expectedResourceAuditJavaObject.setPrevVersion("");
1943 // expectedResourceAuditJavaObject.setCurrState("");
1944 // expectedResourceAuditJavaObject.setCurrVersion("");
1945 // expectedResourceAuditJavaObject.setResourceName("");
1946 // expectedResourceAuditJavaObject.setModifierUid(ElementFactory.getDefaultUser(UserRoleEnum.ADMIN).getUserId());
1947 // expectedResourceAuditJavaObject.setModifierName(ElementFactory.getDefaultUser(UserRoleEnum.ADMIN).getFullName());
1948 // expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString());
1950 // String auditDesc =
1951 // AuditValidationUtils.buildAuditDescription(errorInfo, variables);
1952 // expectedResourceAuditJavaObject.setDesc(auditDesc);
1953 // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject,
1954 // auditAction, null, false);
1958 public void checkInvariantUuidIsImmutable() throws Exception {
1959 // choose the user to create resource
1960 User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN);
1961 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource();
1962 String invariantUuidDefinedByUser = "!!!!!!!!!!!!!!!!!!!!!!!!";
1963 resourceDetails.setInvariantUUID(invariantUuidDefinedByUser);
1964 String resourceName = resourceDetails.getName();
1965 resourceDetails.setTags(Arrays.asList(resourceName, resourceName, resourceName, resourceName, "tag2", "tag2"));
1967 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncUserDetails);
1968 BaseRestUtils.checkStatusCode(createResponse, "create request failed", false, 201);
1969 // validate response
1970 assertNotNull("check response object is not null after create resource", createResponse);
1971 assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode());
1972 assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue());
1974 Resource resourceCreation = ResponseParser.convertResourceResponseToJavaObject(createResponse.getResponse());
1975 String invariantUUIDcreation = resourceCreation.getInvariantUUID();
1976 // validate response
1977 ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails,
1979 resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString());
1980 resourceRespJavaObject.setAbstractt("false");
1981 ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject);
1983 // validate get response
1984 RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncUserDetails,
1985 resourceDetails.getUniqueId());
1986 BaseRestUtils.checkSuccess(resourceGetResponse);
1987 Resource resourceGetting = ResponseParser
1988 .convertResourceResponseToJavaObject(resourceGetResponse.getResponse());
1989 ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject);
1990 String invariantUUIDgetting = resourceGetting.getInvariantUUID();
1991 assertEquals(invariantUUIDcreation, invariantUUIDgetting);
1993 // Update resource with new invariant UUID
1994 RestResponse restResponseUpdate = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncUserDetails,
1995 resourceDetails.getUniqueId());
1996 BaseRestUtils.checkSuccess(restResponseUpdate);
1997 Resource updatedResource = ResponseParser.convertResourceResponseToJavaObject(restResponseUpdate.getResponse());
1998 String invariantUUIDupdating = updatedResource.getInvariantUUID();
1999 assertEquals(invariantUUIDcreation, invariantUUIDupdating);
2002 RestResponse restResponseCheckin = LifecycleRestUtils.changeResourceState(resourceDetails, sdncUserDetails,
2003 resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN);
2004 BaseRestUtils.checkSuccess(restResponseCheckin);
2005 Resource checkinResource = ResponseParser
2006 .convertResourceResponseToJavaObject(restResponseCheckin.getResponse());
2007 String invariantUUIDcheckin = checkinResource.getInvariantUUID();
2008 String version = checkinResource.getVersion();
2009 assertEquals(invariantUUIDcreation, invariantUUIDcheckin);
2010 assertEquals(version, "0.1");
2013 RestResponse restResponseCheckout = LifecycleRestUtils.changeResourceState(resourceDetails, sdncUserDetails,
2014 resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT);
2015 BaseRestUtils.checkSuccess(restResponseCheckout);
2016 Resource ResourceResource = ResponseParser
2017 .convertResourceResponseToJavaObject(restResponseCheckout.getResponse());
2018 String invariantUUIDcheckout = ResourceResource.getInvariantUUID();
2019 version = ResourceResource.getVersion();
2020 assertEquals(invariantUUIDcreation, invariantUUIDcheckout);
2021 assertEquals(version, "0.2");
2023 // do certification request
2024 RestResponse restResponseCertificationRequest = LifecycleRestUtils.changeResourceState(resourceDetails,
2025 sdncUserDetails, resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST);
2026 BaseRestUtils.checkSuccess(restResponseCertificationRequest);
2027 Resource certificationRequestResource = ResponseParser
2028 .convertResourceResponseToJavaObject(restResponseCertificationRequest.getResponse());
2029 String invariantUUIDcertificationRequest = certificationRequestResource.getInvariantUUID();
2030 version = certificationRequestResource.getVersion();
2031 assertEquals(invariantUUIDcreation, invariantUUIDcertificationRequest);
2032 assertEquals(version, "0.2");
2034 // start certification
2035 RestResponse restResponseStartCertification = LifecycleRestUtils.changeResourceState(resourceDetails,
2036 sdncUserDetails, resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION);
2037 BaseRestUtils.checkSuccess(restResponseStartCertification);
2038 Resource startCertificationRequestResource = ResponseParser
2039 .convertResourceResponseToJavaObject(restResponseStartCertification.getResponse());
2040 String invariantUUIDStartCertification = startCertificationRequestResource.getInvariantUUID();
2041 version = startCertificationRequestResource.getVersion();
2042 assertEquals(invariantUUIDcreation, invariantUUIDStartCertification);
2043 assertEquals(version, "0.2");
2046 RestResponse restResponseCertify = LifecycleRestUtils.changeResourceState(resourceDetails, sdncUserDetails,
2047 resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY);
2048 BaseRestUtils.checkSuccess(restResponseCertify);
2049 Resource certifyResource = ResponseParser
2050 .convertResourceResponseToJavaObject(restResponseCertify.getResponse());
2051 String invariantUUIDcertify = certifyResource.getInvariantUUID();
2052 version = certifyResource.getVersion();
2053 assertEquals(invariantUUIDcreation, invariantUUIDcertify);
2054 assertEquals(version, "1.0");
2060 private void getResourceValidateInvariantUuid(String resourceUniqueId, String invariantUUIDcreation)
2062 RestResponse getResource = ResourceRestUtils.getResource(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER),
2064 BaseRestUtils.checkSuccess(getResource);
2065 Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class);
2066 assertEquals(invariantUUIDcreation, resource.getInvariantUUID());
2070 public void resourceInvariantUuid() throws Exception {
2072 User designerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER);
2073 User testerUser = ElementFactory.getDefaultUser(UserRoleEnum.TESTER);
2074 ResourceReqDetails resourceDetails = ElementFactory.getDefaultResourceByType("VF200", NormativeTypesEnum.ROOT,
2075 ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, designerUser.getUserId(), ResourceTypeEnum.VF.toString());
2076 ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("newtestservice1",
2077 ServiceCategoriesEnum.MOBILITY, designerUser.getUserId());
2079 // ResourceReqDetails resourceDetails =
2080 // ElementFactory.getDefaultResource();
2081 resourceDetails.setInvariantUUID("kokomoko");
2082 RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, designerUser);
2083 assertEquals("Check response code after create resource", BaseRestUtils.STATUS_CODE_CREATED,
2084 createResponse.getErrorCode().intValue());
2085 Resource resource = ResponseParser.parseToObjectUsingMapper(createResponse.getResponse(), Resource.class);
2086 String invariantUUIDcreation = resource.getInvariantUUID(); // generated
2093 // get resource and verify InvariantUuid is not changed
2094 getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation);
2096 // Update resource with new invariant UUID
2097 resourceDetails.setInvariantUUID("1234567890");
2098 RestResponse updateResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, designerUser,
2099 resourceDetails.getUniqueId());
2100 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS,
2101 updateResponse.getErrorCode().intValue());
2102 getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation);
2105 RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2106 resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN);
2107 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2108 assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse));
2109 getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation);
2112 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2113 resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT);
2114 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2115 assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse));
2116 getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation);
2117 // certification request
2118 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2119 LifeCycleStatesEnum.CERTIFICATIONREQUEST);
2120 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2121 assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse));
2122 getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation);
2123 // start certification
2124 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser,
2125 LifeCycleStatesEnum.STARTCERTIFICATION);
2126 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2127 assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse));
2128 getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation);
2130 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser, LifeCycleStatesEnum.CERTIFY);
2131 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2132 assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse));
2133 getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation);
2135 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2136 LifeCycleStatesEnum.CHECKOUT);
2137 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2138 resourceDetails.setDescription("updatedDescription");
2139 resourceDetails.setVendorRelease("1.2.3.4");
2140 updateResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, designerUser,
2141 resourceDetails.getUniqueId());
2142 assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, updateResponse.getErrorCode().intValue());
2143 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2145 // certification request
2146 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2147 LifeCycleStatesEnum.CERTIFICATIONREQUEST);
2148 assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2149 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2151 // checkout resource
2152 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2153 LifeCycleStatesEnum.CHECKOUT);
2154 assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2155 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2157 // certification request
2158 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2159 LifeCycleStatesEnum.CERTIFICATIONREQUEST);
2160 assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2161 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2162 // start certification
2163 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser,
2164 LifeCycleStatesEnum.STARTCERTIFICATION);
2165 assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2166 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2168 // cancel certification
2169 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser,
2170 LifeCycleStatesEnum.CANCELCERTIFICATION);
2171 assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2172 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2174 // start certification
2175 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser,
2176 LifeCycleStatesEnum.STARTCERTIFICATION);
2177 assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2178 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2181 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser,
2182 LifeCycleStatesEnum.FAILCERTIFICATION);
2183 assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2184 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2187 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2188 LifeCycleStatesEnum.CHECKOUT);
2189 ArtifactReqDetails artifactDetails = ElementFactory.getDefaultArtifact();
2190 ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails, designerUser,
2191 resourceDetails.getUniqueId());
2192 assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2193 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);
2196 restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser,
2197 resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN);
2198 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue());
2200 RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, designerUser);
2201 ResourceRestUtils.checkCreateResponse(createServiceResponse);
2202 ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory
2203 .getComponentResourceInstance(resourceDetails);
2204 RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(
2205 resourceInstanceReqDetails, designerUser, serviceDetails.getUniqueId(), ComponentTypeEnum.SERVICE);
2206 assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_CREATED,
2207 createResourceInstanceResponse.getErrorCode().intValue());
2208 getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation);