Add sdc startup in IT
[sdc.git] / integration-tests / src / test / java / org / onap / sdc / backend / ci / tests / utils / rest / EcompUserRestUtils.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.onap.sdc.backend.ci.tests.utils.rest;
22
23 import com.google.gson.Gson;
24 import org.onap.portalsdk.core.restful.domain.EcompRole;
25 import org.onap.portalsdk.core.restful.domain.EcompUser;
26 import org.onap.sdc.backend.ci.tests.datatypes.http.HttpHeaderEnum;
27 import org.onap.sdc.backend.ci.tests.datatypes.http.HttpRequest;
28 import org.onap.sdc.backend.ci.tests.datatypes.http.RestResponse;
29 import org.onap.sdc.backend.ci.tests.api.Urls;
30 import org.onap.sdc.backend.ci.tests.config.Config;
31 import org.onap.sdc.backend.ci.tests.utils.Utils;
32 import org.slf4j.Logger;
33 import org.slf4j.LoggerFactory;
34
35 import java.io.IOException;
36 import java.util.HashMap;
37 import java.util.List;
38 import java.util.Map;
39
40 public class EcompUserRestUtils extends BaseRestUtils {
41
42         static Gson gson = new Gson();
43
44         static Logger logger = LoggerFactory.getLogger(EcompUserRestUtils.class.getName());
45         static String ecompUsername = "12345";
46         static String ecompPassword = "12345";
47
48         public EcompUserRestUtils() {
49                 super();
50         }
51
52         public static RestResponse pushUser(EcompUser ecompUser) throws IOException {
53                 Config config = Utils.getConfig();
54
55                 Map<String, String> headersMap = new HashMap<>();
56                 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
57                 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
58                 headersMap.put(HttpHeaderEnum.ECOMP_USERNAME.getValue(), ecompUsername);
59                 headersMap.put(HttpHeaderEnum.ECOMP_PASSWORD.getValue(), ecompPassword);
60
61                 String userBodyJson = gson.toJson(ecompUser);
62
63                 HttpRequest http = new HttpRequest();
64                 String url = String.format(Urls.ECOMP_PUSH_USER, config.getCatalogBeHost(), config.getCatalogBePort());
65
66                 logger.debug("Send POST request to create user: {}", url);
67                 logger.debug("User body: {}", userBodyJson);
68                 logger.debug("User headers: {}", headersMap);
69
70                 RestResponse sendPushUserResponse = http.httpSendPost(url, userBodyJson, headersMap);
71
72                 return sendPushUserResponse;
73         }
74
75         /*
76          * loginId - equals to userId
77          */
78         public static RestResponse editUser(String loginId, EcompUser ecompUser) throws IOException {
79                 Config config = Utils.getConfig();
80
81                 Map<String, String> headersMap = new HashMap<>();
82                 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
83                 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
84                 headersMap.put(HttpHeaderEnum.ECOMP_USERNAME.getValue(), ecompUsername);
85                 headersMap.put(HttpHeaderEnum.ECOMP_PASSWORD.getValue(), ecompPassword);
86
87                 String userBodyJson = gson.toJson(ecompUser);
88
89                 HttpRequest http = new HttpRequest();
90                 String url = String.format(Urls.ECOMP_EDIT_USER, config.getCatalogBeHost(), config.getCatalogBePort(), loginId);
91
92                 logger.debug("Send POST request to edit user: {}", url);
93                 logger.debug("User body: {}", userBodyJson);
94                 logger.debug("User headers: {}", headersMap);
95
96                 RestResponse sendEditUserResponse = http.httpSendPost(url, userBodyJson, headersMap);
97
98                 return sendEditUserResponse;
99         }
100
101         /*
102          * loginId - equals to userId
103          */
104         public static RestResponse getUser(String loginId) throws IOException {
105                 Config config = Utils.getConfig();
106
107                 Map<String, String> headersMap = new HashMap<>();
108                 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
109                 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
110                 headersMap.put(HttpHeaderEnum.ECOMP_USERNAME.getValue(), ecompUsername);
111                 headersMap.put(HttpHeaderEnum.ECOMP_PASSWORD.getValue(), ecompPassword);
112
113                 HttpRequest http = new HttpRequest();
114                 String url = String.format(Urls.ECOMP_GET_USER, config.getCatalogBeHost(), config.getCatalogBePort(), loginId);
115
116                 logger.debug("Send GET request to get user: {}", url);
117                 logger.debug("User headers: {}", headersMap);
118
119                 RestResponse sendGetUserRequest = http.httpSendGet(url, headersMap);
120
121                 return sendGetUserRequest;
122         }
123
124         public static RestResponse getAllUsers() throws IOException {
125                 Config config = Utils.getConfig();
126
127                 Map<String, String> headersMap = new HashMap<>();
128                 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
129                 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
130                 headersMap.put(HttpHeaderEnum.ECOMP_USERNAME.getValue(), ecompUsername);
131                 headersMap.put(HttpHeaderEnum.ECOMP_PASSWORD.getValue(), ecompPassword);
132
133                 HttpRequest http = new HttpRequest();
134                 String url = String.format(Urls.ECOMP_GET_ALL_USERS, config.getCatalogBeHost(), config.getCatalogBePort());
135
136                 logger.debug("Send POST request to get all users: {}", url);
137                 logger.debug("User headers: {}", headersMap);
138
139                 RestResponse sendGetAllUsersRequest = http.httpSendGet(url, headersMap);
140
141                 return sendGetAllUsersRequest;
142         }
143
144         public static RestResponse getAllAvailableRoles() throws IOException {
145                 Config config = Utils.getConfig();
146
147                 Map<String, String> headersMap = new HashMap<>();
148                 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
149                 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
150                 headersMap.put(HttpHeaderEnum.ECOMP_USERNAME.getValue(), ecompUsername);
151                 headersMap.put(HttpHeaderEnum.ECOMP_PASSWORD.getValue(), ecompPassword);
152
153                 HttpRequest http = new HttpRequest();
154                 String url = String.format(Urls.ECOMP_GET_ALL_AVAILABLE_ROLES, config.getCatalogBeHost(),
155                                 config.getCatalogBePort());
156
157                 logger.debug("Send GET request to get all available roles: {}", url);
158                 logger.debug("User headers: {}", headersMap);
159
160                 RestResponse sendUpdateUserRequest = http.httpSendGet(url, headersMap);
161
162                 return sendUpdateUserRequest;
163         }
164
165         /*
166          * loginId - equals to userId
167          */
168         public static RestResponse pushUserRoles(String loginId, List<EcompRole> roles) throws IOException {
169                 Config config = Utils.getConfig();
170
171                 Map<String, String> headersMap = new HashMap<>();
172                 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
173                 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
174                 headersMap.put(HttpHeaderEnum.ECOMP_USERNAME.getValue(), ecompUsername);
175                 headersMap.put(HttpHeaderEnum.ECOMP_PASSWORD.getValue(), ecompPassword);
176
177                 String roleBodyJson = gson.toJson(roles);
178                 if(roleBodyJson.equals("[{}]")) {
179                         roleBodyJson = "[]";
180                 }
181
182                 HttpRequest http = new HttpRequest();
183                 String url = String.format(Urls.ECOMP_PUSH_USER_ROLES, config.getCatalogBeHost(), config.getCatalogBePort(),
184                                 loginId);
185
186                 logger.debug("Send POST request to push user role: {}", url);
187                 logger.debug("Roles body: {}", roleBodyJson);
188                 logger.debug("Request headers: {}", headersMap);
189
190                 RestResponse sendpushUserRolesResponse = http.httpSendPost(url, roleBodyJson, headersMap);
191
192                 return sendpushUserRolesResponse;
193         }
194
195         /*
196          * loginId - equals to userId
197          */
198         public static RestResponse getUserRoles(String loginId) throws IOException {
199                 Config config = Utils.getConfig();
200
201                 Map<String, String> headersMap = new HashMap<>();
202                 headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData);
203                 headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderData);
204                 headersMap.put(HttpHeaderEnum.ECOMP_USERNAME.getValue(), ecompUsername);
205                 headersMap.put(HttpHeaderEnum.ECOMP_PASSWORD.getValue(), ecompPassword);
206
207                 HttpRequest http = new HttpRequest();
208                 String url = String.format(Urls.ECOMP_GET_USER_ROLES, config.getCatalogBeHost(), config.getCatalogBePort(),
209                                 loginId);
210
211                 logger.debug("Send GET request to get user roles: {}", url);
212                 logger.debug("User headers: {}", headersMap);
213
214                 RestResponse sendGetUserRolesRequest = http.httpSendGet(url, headersMap);
215
216                 return sendGetUserRolesRequest;
217         }
218 }