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.utils.rest;
23 import static org.testng.AssertJUnit.assertEquals;
27 import org.codehaus.jackson.map.ObjectMapper;
28 import org.openecomp.sdc.be.datatypes.elements.ConsumerDataDefinition;
29 import org.openecomp.sdc.be.model.User;
30 import org.openecomp.sdc.ci.tests.api.Urls;
31 import org.openecomp.sdc.ci.tests.config.Config;
32 import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest;
33 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
34 import org.openecomp.sdc.ci.tests.utils.Utils;
36 import com.google.gson.Gson;
38 public class ConsumerRestUtils extends BaseRestUtils {
40 public static final int STATUS_CODE_SUCCESS = 200;
41 public static final int STATUS_CODE_CREATED = 201;
42 public static final int STATUS_CODE_DELETE = 204;
43 public static final int STATUS_CODE_NOT_FOUND = 404;
44 Utils utils = new Utils();
45 private static Long expectedsLastupdatedtime;
46 private static Long expectedLastAuthenticationTime;
48 public static RestResponse createConsumer(ConsumerDataDefinition consumerDataDefinition, User sdncModifierDetails)
51 Config config = Utils.getConfig();
52 String url = String.format(Urls.CREATE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort());
54 String userId = sdncModifierDetails.getUserId();
56 Map<String, String> headersMap = prepareHeadersMap(userId);
58 Gson gson = new Gson();
59 String userBodyJson = gson.toJson(consumerDataDefinition);
61 HttpRequest http = new HttpRequest();
62 // System.out.println(url);
63 // System.out.println(userBodyJson);
64 RestResponse createConsumerResponse = http.httpSendPost(url, userBodyJson, headersMap);
65 if (createConsumerResponse.getErrorCode() == STATUS_CODE_CREATED) {
66 ConsumerDataDefinition getConsumerDataObject = parseComsumerResp(createConsumerResponse);
67 consumerDataDefinition
68 .setConsumerDetailsLastupdatedtime(getConsumerDataObject.getConsumerDetailsLastupdatedtime());
69 consumerDataDefinition
70 .setConsumerLastAuthenticationTime(getConsumerDataObject.getConsumerLastAuthenticationTime());
71 consumerDataDefinition.setLastModfierAtuid(getConsumerDataObject.getLastModfierAtuid());
73 return createConsumerResponse;
76 public static RestResponse createConsumerHttpCspAtuUidIsMissing(ConsumerDataDefinition consumerDataDefinition,
77 User sdncModifierDetails) throws Exception {
79 Config config = Utils.getConfig();
80 String url = String.format(Urls.CREATE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort());
82 String userId = sdncModifierDetails.getUserId();
83 Map<String, String> headersMap = prepareHeadersMap(userId);
84 headersMap.remove("USER_ID");
85 Gson gson = new Gson();
86 String userBodyJson = gson.toJson(consumerDataDefinition);
87 HttpRequest http = new HttpRequest();
88 // System.out.println(url);
89 // System.out.println(userBodyJson);
90 RestResponse createConsumerResponse = http.httpSendPost(url, userBodyJson, headersMap);
91 if (createConsumerResponse.getErrorCode() == STATUS_CODE_CREATED) {
92 ConsumerDataDefinition getConsumerDataObject = parseComsumerResp(createConsumerResponse);
93 consumerDataDefinition
94 .setConsumerDetailsLastupdatedtime(getConsumerDataObject.getConsumerDetailsLastupdatedtime());
95 consumerDataDefinition
96 .setConsumerLastAuthenticationTime(getConsumerDataObject.getConsumerLastAuthenticationTime());
97 consumerDataDefinition.setLastModfierAtuid(getConsumerDataObject.getLastModfierAtuid());
99 return createConsumerResponse;
102 public static RestResponse deleteConsumerHttpCspAtuUidIsMissing(ConsumerDataDefinition consumerDataDefinition,
103 User sdncModifierDetails) throws Exception {
105 Config config = Utils.getConfig();
106 String url = String.format(Urls.DELETE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort(),
107 consumerDataDefinition.getConsumerName());
109 String userId = sdncModifierDetails.getUserId();
110 Map<String, String> headersMap = prepareHeadersMap(userId);
111 headersMap.remove("USER_ID");
112 Gson gson = new Gson();
113 String userBodyJson = gson.toJson(consumerDataDefinition);
114 HttpRequest http = new HttpRequest();
115 // System.out.println(url);
116 // System.out.println(userBodyJson);
117 RestResponse deleteConsumerResponse = http.httpSendDelete(url, headersMap);
118 return deleteConsumerResponse;
121 public static ConsumerDataDefinition parseComsumerResp(RestResponse restResponse) throws Exception {
123 String bodyToParse = restResponse.getResponse();
124 ObjectMapper mapper = new ObjectMapper();
126 ConsumerDataDefinition component = mapper.readValue(bodyToParse, ConsumerDataDefinition.class);
128 } catch (Exception e) {
135 public static RestResponse deleteConsumer(ConsumerDataDefinition consumerDataDefinition, User sdncModifierDetails)
138 Config config = Utils.getConfig();
139 String url = String.format(Urls.DELETE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort(),
140 consumerDataDefinition.getConsumerName());
142 String userId = sdncModifierDetails.getUserId();
144 Map<String, String> headersMap = prepareHeadersMap(userId);
145 HttpRequest http = new HttpRequest();
146 // System.out.println(url);
147 RestResponse deleteConsumerResponse = http.httpSendDelete(url, headersMap);
148 return deleteConsumerResponse;
151 public static RestResponse getConsumer(ConsumerDataDefinition consumerDataDefinition, User sdncModifierDetails)
154 Config config = Utils.getConfig();
155 String url = String.format(Urls.GET_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort(),
156 consumerDataDefinition.getConsumerName());
158 String userId = sdncModifierDetails.getUserId();
160 Map<String, String> headersMap = prepareHeadersMap(userId);
161 HttpRequest http = new HttpRequest();
162 // System.out.println(url);
163 RestResponse getConsumerResponse = http.httpSendGet(url, headersMap);
164 return getConsumerResponse;
167 public static void validateConsumerReqVsResp(ConsumerDataDefinition consumerDefinition,
168 ConsumerDataDefinition getConsumerDataObject) {
172 expected = consumerDefinition.getConsumerName();
173 assertEquals("consumer name - ", expected, getConsumerDataObject.getConsumerName());
175 expected = consumerDefinition.getConsumerPassword().toLowerCase();
176 assertEquals("consumer password - ", expected, getConsumerDataObject.getConsumerPassword());
178 expected = consumerDefinition.getLastModfierAtuid();
179 assertEquals("consumer Last Modfier Atuid - ", expected, getConsumerDataObject.getLastModfierAtuid());
181 expected = consumerDefinition.getConsumerSalt();
182 assertEquals("consumer Salt - ", expected, getConsumerDataObject.getConsumerSalt());
184 expectedsLastupdatedtime = consumerDefinition.getConsumerDetailsLastupdatedtime();
185 assertEquals("consumer Last updated time - ", expectedsLastupdatedtime,
186 getConsumerDataObject.getConsumerDetailsLastupdatedtime());
188 expectedLastAuthenticationTime = consumerDefinition.getConsumerLastAuthenticationTime();
189 assertEquals("consumer Last authentication time - ", expectedLastAuthenticationTime,
190 getConsumerDataObject.getConsumerLastAuthenticationTime());
194 public enum EcompConsumerAuditJsonKeysEnum {
195 ACTION("ACTION"), MODIFIER("MODIFIER"), ECOMP_USER("ECOMP_USER"), STATUS("STATUS"), DESC("DESCRIPTION");
196 private String auditJsonKeyName;
198 private EcompConsumerAuditJsonKeysEnum(String auditJsonKeyName) {
199 this.auditJsonKeyName = auditJsonKeyName;
202 public String getAuditJsonKeyName() {
203 return auditJsonKeyName.toLowerCase();
208 * protected void resourceArtifatAuditSuccess(String action,
209 * ArtifactReqDetails artifact, ResourceReqDetails resourceDetails , User
210 * user) throws Exception { ExpectedResourceAuditJavaObject
211 * expectedResourceAuditJavaObject =
212 * Convertor.constructFieldsForAuditValidation(resourceDetails,
213 * resourceDetails.getVersion(), user); String auditAction = action;
214 * expectedResourceAuditJavaObject.setAction(auditAction);
215 * expectedResourceAuditJavaObject.setPrevState("");
216 * expectedResourceAuditJavaObject.setPrevVersion("");
217 * expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.
218 * NOT_CERTIFIED_CHECKOUT).toString());
219 * expectedResourceAuditJavaObject.setStatus("200");
220 * expectedResourceAuditJavaObject.setDesc("OK");
221 * expectedResourceAuditJavaObject.setArtifactName(artifact.getArtifactName(
222 * )); AuditUtils.validateAudit(expectedResourceAuditJavaObject,
223 * auditAction, null); }
227 * protected void resourceArtifatValidateAuditWithErrorMessage(String
228 * actionStatus, ResourceReqDetails resourceDetails, String auditAction,
229 * String setCurrState, Object ... variables)throws Exception { ErrorInfo
230 * errorInfo = utils.parseYaml(actionStatus);
231 * ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject =
232 * Convertor.constructFieldsForAuditValidation(resourceDetails,
233 * resourceDetails.getVersion(), sdncUserDetails);
234 * expectedResourceAuditJavaObject.setAction(auditAction);
235 * expectedResourceAuditJavaObject.setPrevState("");
236 * expectedResourceAuditJavaObject.setPrevVersion("");
237 * expectedResourceAuditJavaObject.setCurrState(setCurrState);
238 * expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString())
240 * expectedResourceAuditJavaObject.setDesc(errorInfo.getAuditDesc(variables)
241 * ); expectedResourceAuditJavaObject.setArtifactName("");
242 * AuditUtils.validateAudit(expectedResourceAuditJavaObject, auditAction,