sanity fix after merge of BE code
[sdc.git] / test-apis-ci / src / main / java / org / openecomp / sdc / ci / tests / utils / rest / ConsumerRestUtils.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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=========================================================
19  */
20
21 package org.openecomp.sdc.ci.tests.utils.rest;
22
23 import static org.testng.AssertJUnit.assertEquals;
24
25 import java.util.Map;
26
27 import org.codehaus.jackson.map.DeserializationConfig;
28 import org.codehaus.jackson.map.ObjectMapper;
29 import org.openecomp.sdc.be.datatypes.elements.ConsumerDataDefinition;
30 import org.openecomp.sdc.be.model.User;
31 import org.openecomp.sdc.ci.tests.api.Urls;
32 import org.openecomp.sdc.ci.tests.config.Config;
33 import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest;
34 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
35 import org.openecomp.sdc.ci.tests.utils.Utils;
36
37 import com.google.gson.Gson;
38
39 public class ConsumerRestUtils extends BaseRestUtils {
40
41         public static final int STATUS_CODE_SUCCESS = 200;
42         public static final int STATUS_CODE_CREATED = 201;
43         public static final int STATUS_CODE_DELETE = 204;
44         public static final int STATUS_CODE_NOT_FOUND = 404;
45         Utils utils = new Utils();
46         private static Long expectedsLastupdatedtime;
47         private static Long expectedLastAuthenticationTime;
48
49         public static RestResponse createConsumer(ConsumerDataDefinition consumerDataDefinition, User sdncModifierDetails)
50                         throws Exception {
51
52                 Config config = Utils.getConfig();
53                 String url = String.format(Urls.CREATE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort());
54
55                 String userId = sdncModifierDetails.getUserId();
56
57                 Map<String, String> headersMap = prepareHeadersMap(userId);
58
59                 Gson gson = new Gson();
60                 String userBodyJson = gson.toJson(consumerDataDefinition);
61
62                 HttpRequest http = new HttpRequest();
63                 // System.out.println(url);
64                 // System.out.println(userBodyJson);
65                 RestResponse createConsumerResponse = http.httpSendPost(url, userBodyJson, headersMap);
66                 if (createConsumerResponse.getErrorCode() == STATUS_CODE_CREATED) {
67                         ConsumerDataDefinition getConsumerDataObject = parseComsumerResp(createConsumerResponse);
68                         consumerDataDefinition
69                                         .setConsumerDetailsLastupdatedtime(getConsumerDataObject.getConsumerDetailsLastupdatedtime());
70                         consumerDataDefinition
71                                         .setConsumerLastAuthenticationTime(getConsumerDataObject.getConsumerLastAuthenticationTime());
72                         consumerDataDefinition.setLastModfierAtuid(getConsumerDataObject.getLastModfierAtuid());
73                 }
74                 return createConsumerResponse;
75         }
76
77         public static RestResponse createConsumerHttpCspAtuUidIsMissing(ConsumerDataDefinition consumerDataDefinition,
78                         User sdncModifierDetails) throws Exception {
79
80                 Config config = Utils.getConfig();
81                 String url = String.format(Urls.CREATE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort());
82
83                 String userId = sdncModifierDetails.getUserId();
84                 Map<String, String> headersMap = prepareHeadersMap(userId);
85                 headersMap.remove("USER_ID");
86                 Gson gson = new Gson();
87                 String userBodyJson = gson.toJson(consumerDataDefinition);
88                 HttpRequest http = new HttpRequest();
89                 // System.out.println(url);
90                 // System.out.println(userBodyJson);
91                 RestResponse createConsumerResponse = http.httpSendPost(url, userBodyJson, headersMap);
92                 if (createConsumerResponse.getErrorCode() == STATUS_CODE_CREATED) {
93                         ConsumerDataDefinition getConsumerDataObject = parseComsumerResp(createConsumerResponse);
94                         consumerDataDefinition
95                                         .setConsumerDetailsLastupdatedtime(getConsumerDataObject.getConsumerDetailsLastupdatedtime());
96                         consumerDataDefinition
97                                         .setConsumerLastAuthenticationTime(getConsumerDataObject.getConsumerLastAuthenticationTime());
98                         consumerDataDefinition.setLastModfierAtuid(getConsumerDataObject.getLastModfierAtuid());
99                 }
100                 return createConsumerResponse;
101         }
102
103         public static RestResponse deleteConsumerHttpCspAtuUidIsMissing(ConsumerDataDefinition consumerDataDefinition,
104                         User sdncModifierDetails) throws Exception {
105
106                 Config config = Utils.getConfig();
107                 String url = String.format(Urls.DELETE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort(),
108                                 consumerDataDefinition.getConsumerName());
109
110                 String userId = sdncModifierDetails.getUserId();
111                 Map<String, String> headersMap = prepareHeadersMap(userId);
112                 headersMap.remove("USER_ID");
113                 Gson gson = new Gson();
114                 String userBodyJson = gson.toJson(consumerDataDefinition);
115                 HttpRequest http = new HttpRequest();
116                 // System.out.println(url);
117                 // System.out.println(userBodyJson);
118                 RestResponse deleteConsumerResponse = http.httpSendDelete(url, headersMap);
119                 return deleteConsumerResponse;
120         }
121
122         public static ConsumerDataDefinition parseComsumerResp(RestResponse restResponse) throws Exception {
123
124                 String bodyToParse = restResponse.getResponse();
125                 ObjectMapper mapper = new ObjectMapper();
126                 try {
127                         mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
128                         ConsumerDataDefinition component = mapper.readValue(bodyToParse, ConsumerDataDefinition.class);
129                         return component;
130                 } catch (Exception e) {
131                         e.printStackTrace();
132                 }
133
134                 return null;
135         }
136
137         public static RestResponse deleteConsumer(ConsumerDataDefinition consumerDataDefinition, User sdncModifierDetails)
138                         throws Exception {
139
140                 Config config = Utils.getConfig();
141                 String url = String.format(Urls.DELETE_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort(),
142                                 consumerDataDefinition.getConsumerName());
143
144                 String userId = sdncModifierDetails.getUserId();
145
146                 Map<String, String> headersMap = prepareHeadersMap(userId);
147                 HttpRequest http = new HttpRequest();
148                 // System.out.println(url);
149                 RestResponse deleteConsumerResponse = http.httpSendDelete(url, headersMap);
150                 return deleteConsumerResponse;
151         }
152
153         public static RestResponse getConsumer(ConsumerDataDefinition consumerDataDefinition, User sdncModifierDetails)
154                         throws Exception {
155
156                 Config config = Utils.getConfig();
157                 String url = String.format(Urls.GET_CONSUMER, config.getCatalogBeHost(), config.getCatalogBePort(),
158                                 consumerDataDefinition.getConsumerName());
159
160                 String userId = sdncModifierDetails.getUserId();
161
162                 Map<String, String> headersMap = prepareHeadersMap(userId);
163                 HttpRequest http = new HttpRequest();
164                 // System.out.println(url);
165                 RestResponse getConsumerResponse = http.httpSendGet(url, headersMap);
166                 return getConsumerResponse;
167         }
168
169         public static void validateConsumerReqVsResp(ConsumerDataDefinition consumerDefinition,
170                         ConsumerDataDefinition getConsumerDataObject) {
171
172                 String expected;
173
174                 expected = consumerDefinition.getConsumerName();
175                 assertEquals("consumer name - ", expected, getConsumerDataObject.getConsumerName());
176
177                 expected = consumerDefinition.getConsumerPassword().toLowerCase();
178                 assertEquals("consumer password  - ", expected, getConsumerDataObject.getConsumerPassword());
179
180                 expected = consumerDefinition.getLastModfierAtuid();
181                 assertEquals("consumer Last Modfier Atuid - ", expected, getConsumerDataObject.getLastModfierAtuid());
182
183                 expected = consumerDefinition.getConsumerSalt();
184                 assertEquals("consumer Salt - ", expected, getConsumerDataObject.getConsumerSalt());
185
186                 expectedsLastupdatedtime = consumerDefinition.getConsumerDetailsLastupdatedtime();
187                 assertEquals("consumer Last updated time - ", expectedsLastupdatedtime,
188                                 getConsumerDataObject.getConsumerDetailsLastupdatedtime());
189
190                 expectedLastAuthenticationTime = consumerDefinition.getConsumerLastAuthenticationTime();
191                 assertEquals("consumer Last authentication time - ", expectedLastAuthenticationTime,
192                                 getConsumerDataObject.getConsumerLastAuthenticationTime());
193         }
194
195         ///// New
196         public enum EcompConsumerAuditJsonKeysEnum {
197                 ACTION("ACTION"), MODIFIER("MODIFIER"), ECOMP_USER("ECOMP_USER"), STATUS("STATUS"), DESC("DESCRIPTION");
198                 private String auditJsonKeyName;
199
200                 private EcompConsumerAuditJsonKeysEnum(String auditJsonKeyName) {
201                         this.auditJsonKeyName = auditJsonKeyName;
202                 }
203
204                 public String getAuditJsonKeyName() {
205                         return auditJsonKeyName.toLowerCase();
206                 }
207         }
208
209         /*
210          * protected void resourceArtifatAuditSuccess(String action,
211          * ArtifactReqDetails artifact, ResourceReqDetails resourceDetails , User
212          * user) throws Exception { ExpectedResourceAuditJavaObject
213          * expectedResourceAuditJavaObject =
214          * Convertor.constructFieldsForAuditValidation(resourceDetails,
215          * resourceDetails.getVersion(), user); String auditAction = action;
216          * expectedResourceAuditJavaObject.setAction(auditAction);
217          * expectedResourceAuditJavaObject.setPrevState("");
218          * expectedResourceAuditJavaObject.setPrevVersion("");
219          * expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.
220          * NOT_CERTIFIED_CHECKOUT).toString());
221          * expectedResourceAuditJavaObject.setStatus("200");
222          * expectedResourceAuditJavaObject.setDesc("OK");
223          * expectedResourceAuditJavaObject.setArtifactName(artifact.getArtifactName(
224          * )); AuditUtils.validateAudit(expectedResourceAuditJavaObject,
225          * auditAction, null); }
226          */
227
228         /*
229          * protected void resourceArtifatValidateAuditWithErrorMessage(String
230          * actionStatus, ResourceReqDetails resourceDetails, String auditAction,
231          * String setCurrState, Object ... variables)throws Exception { ErrorInfo
232          * errorInfo = utils.parseYaml(actionStatus);
233          * ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject =
234          * Convertor.constructFieldsForAuditValidation(resourceDetails,
235          * resourceDetails.getVersion(), sdncUserDetails);
236          * expectedResourceAuditJavaObject.setAction(auditAction);
237          * expectedResourceAuditJavaObject.setPrevState("");
238          * expectedResourceAuditJavaObject.setPrevVersion("");
239          * expectedResourceAuditJavaObject.setCurrState(setCurrState);
240          * expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString())
241          * ;
242          * expectedResourceAuditJavaObject.setDesc(errorInfo.getAuditDesc(variables)
243          * ); expectedResourceAuditJavaObject.setArtifactName("");
244          * AuditUtils.validateAudit(expectedResourceAuditJavaObject, auditAction,
245          * null); }
246          */
247 }