1 package org.openecomp.sdc.ci.tests.execute.resource;
3 import org.json.simple.JSONArray;
4 import org.json.simple.JSONObject;
5 import org.json.simple.JSONValue;
6 import org.junit.rules.TestName;
7 import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
8 import org.openecomp.sdc.be.model.User;
9 import org.openecomp.sdc.ci.tests.api.ComponentBaseTest;
10 import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails;
11 import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum;
12 import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum;
13 import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
14 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
15 import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
16 import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils;
17 import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils;
18 import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
19 import org.slf4j.Logger;
20 import org.slf4j.LoggerFactory;
21 import org.testng.AssertJUnit;
22 import org.testng.annotations.BeforeClass;
23 import org.testng.annotations.AfterClass;
24 import org.testng.annotations.Test;
26 import java.io.IOException;
27 import java.util.Arrays;
29 import static org.testng.AssertJUnit.assertTrue;
32 * Created by chaya on 6/15/2017.
34 public class GetLeftPaletteTest extends ComponentBaseTest {
36 private static Logger logger = LoggerFactory.getLogger(GetLeftPaletteTest.class.getName());
37 protected User designerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER);
38 protected ResourceReqDetails vlResourceDetails;
39 protected ResourceReqDetails cpResourceDetails;
40 protected ResourceReqDetails vfcResourceDetails;
41 protected ResourceReqDetails vfcmtResourceDetails;
42 protected ResourceReqDetails vfResourceDetails;
45 public static TestName name = new TestName();
47 public GetLeftPaletteTest() {
48 super(name, GetLeftPaletteTest.class.getName());
52 public void setUp() throws Exception {
54 vlResourceDetails = createResource(vlResourceDetails, "vlRes", ResourceTypeEnum.VL);
55 checkInResource(vlResourceDetails);
58 cpResourceDetails = createResource(cpResourceDetails, "cpRes", ResourceTypeEnum.CP);
59 checkInResource(cpResourceDetails);
62 vfcResourceDetails = createResource(vfcResourceDetails, "vfcRes", ResourceTypeEnum.VFC);
63 checkInResource(vfcResourceDetails);
66 vfcmtResourceDetails = createResource(vfcmtResourceDetails, "vfcmtRes", ResourceTypeEnum.VFCMT);
67 checkInResource(vfcmtResourceDetails);
70 vfResourceDetails = createResource(vfResourceDetails, "vfRes", ResourceTypeEnum.VF);
71 checkInResource(vfResourceDetails);
77 public void testGetLeftPaletteForPNF() throws IOException {
79 RestResponse getResourceLatestVersionResponse = ResourceRestUtils.getResourceLatestVersionListMetadata(designerDetails, "PNF");
80 assertTrue("response code is not 200, returned :" + getResourceLatestVersionResponse.getErrorCode(),
81 getResourceLatestVersionResponse.getErrorCode() == 200);
83 String json = getResourceLatestVersionResponse.getResponse();
84 JSONArray jsonResp = (JSONArray) JSONValue.parse(json);
86 AssertJUnit.assertTrue("check vlResource is in response",
87 isComponentInArray(vlResourceDetails.getUniqueId(), jsonResp));
89 AssertJUnit.assertTrue("check cpResource is in response",
90 isComponentInArray(cpResourceDetails.getUniqueId(), jsonResp));
92 AssertJUnit.assertFalse("check vfcResource is not in response",
93 isComponentInArray(vfcResourceDetails.getUniqueId(), jsonResp));
95 AssertJUnit.assertFalse("check vfResource is not in response",
96 isComponentInArray(vfResourceDetails.getUniqueId(), jsonResp));
98 AssertJUnit.assertFalse("check vfcmtResource is not in response",
99 isComponentInArray(vfcmtResourceDetails.getUniqueId(), jsonResp));
104 public void testGetLeftPaletteForVF() throws IOException {
106 RestResponse getResourceLatestVersionResponse = ResourceRestUtils.getResourceLatestVersionListMetadata(designerDetails, "VF");
107 assertTrue("response code is not 200, returned :" + getResourceLatestVersionResponse.getErrorCode(),
108 getResourceLatestVersionResponse.getErrorCode() == 200);
110 String json = getResourceLatestVersionResponse.getResponse();
111 JSONArray jsonResp = (JSONArray) JSONValue.parse(json);
113 AssertJUnit.assertTrue("check vlResource is in response",
114 isComponentInArray(vlResourceDetails.getUniqueId(), jsonResp));
116 AssertJUnit.assertTrue("check cpResource is in response",
117 isComponentInArray(cpResourceDetails.getUniqueId(), jsonResp));
119 AssertJUnit.assertTrue("check vfcResource is not in response",
120 isComponentInArray(vfcResourceDetails.getUniqueId(), jsonResp));
122 AssertJUnit.assertFalse("check vfResource is not in response",
123 isComponentInArray(vfResourceDetails.getUniqueId(), jsonResp));
125 AssertJUnit.assertFalse("check vfcmtResource is not in response",
126 isComponentInArray(vfcmtResourceDetails.getUniqueId(), jsonResp));
131 public void testGetLeftPaletteForService() throws IOException {
133 RestResponse getResourceLatestVersionResponse = ResourceRestUtils.getResourceLatestVersionListMetadata(designerDetails, "SERVICE");
134 assertTrue("response code is not 200, returned :" + getResourceLatestVersionResponse.getErrorCode(),
135 getResourceLatestVersionResponse.getErrorCode() == 200);
137 String json = getResourceLatestVersionResponse.getResponse();
138 JSONArray jsonResp = (JSONArray) JSONValue.parse(json);
140 AssertJUnit.assertTrue("check vlResource is in response",
141 isComponentInArray(vlResourceDetails.getUniqueId(), jsonResp));
143 AssertJUnit.assertTrue("check cpResource is in response",
144 isComponentInArray(cpResourceDetails.getUniqueId(), jsonResp));
146 AssertJUnit.assertFalse("check vfcResource is not in response",
147 isComponentInArray(vfcResourceDetails.getUniqueId(), jsonResp));
149 AssertJUnit.assertTrue("check vfResource is not in response",
150 isComponentInArray(vfResourceDetails.getUniqueId(), jsonResp));
152 AssertJUnit.assertFalse("check vfcmtResource is not in response",
153 isComponentInArray(vfcmtResourceDetails.getUniqueId(), jsonResp));
157 private ResourceReqDetails createResource(ResourceReqDetails resDetails, String name, ResourceTypeEnum resType) throws Exception {
158 resDetails = new ResourceReqDetails(name, "desc",Arrays.asList(name), "Generic", Arrays.asList("tosca.nodes.Root"), "c", "1", "111", "myIcon", resType.name());
159 resDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS.getCategory(),
160 ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS.getSubCategory());
161 RestResponse response = ResourceRestUtils.createResource(resDetails, designerDetails);
162 assertTrue("response code is not 200, returned :" + response.getErrorCode(),
163 response.getErrorCode() == 201);
164 resDetails.setUniqueId(ResponseParser.getUniqueIdFromResponse(response));
168 private void checkInResource(ResourceReqDetails resDetails) throws IOException {
169 RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resDetails, designerDetails, "0.1",
170 LifeCycleStatesEnum.CHECKIN);
171 AssertJUnit.assertEquals("check in operation failed", 200, checkInResponse.getErrorCode().intValue());
175 protected boolean isComponentInArray(String id, JSONArray component) {
176 for (int i = 0; i < component.size(); i++) {
177 JSONObject jobject = (JSONObject) component.get(i);
178 if (jobject.get("uniqueId").toString().equals(id.toLowerCase())) {
186 public void tearDown() throws IOException {
187 ResourceRestUtils.deleteResource(vlResourceDetails.getUniqueId(), designerDetails.getUserId());
188 ResourceRestUtils.deleteResource(cpResourceDetails.getUniqueId(), designerDetails.getUserId());
189 ResourceRestUtils.deleteResource(vfcResourceDetails.getUniqueId(), designerDetails.getUserId());
190 ResourceRestUtils.deleteResource(vfcmtResourceDetails.getUniqueId(), designerDetails.getUserId());
191 ResourceRestUtils.deleteResource(vfResourceDetails.getUniqueId(), designerDetails.getUserId());