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.category;
23 import org.junit.Rule;
24 import org.junit.rules.TestName;
25 import org.openecomp.sdc.be.dao.api.ActionStatus;
26 import org.openecomp.sdc.be.model.User;
27 import org.openecomp.sdc.be.model.category.CategoryDefinition;
28 import org.openecomp.sdc.be.model.category.GroupingDefinition;
29 import org.openecomp.sdc.be.model.category.SubCategoryDefinition;
30 import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo;
31 import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
32 import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedCategoryAudit;
33 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
34 import org.openecomp.sdc.ci.tests.utils.DbUtils;
35 import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
36 import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils;
37 import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
38 import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils;
39 import org.openecomp.sdc.ci.tests.utils.validation.CategoryValidationUtils;
40 import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils;
41 import org.testng.SkipException;
42 import org.testng.annotations.BeforeMethod;
43 import org.testng.annotations.Test;
45 import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.*;
46 import static org.testng.AssertJUnit.assertEquals;
48 public class GroupingTest extends CategoriesBaseTest {
50 protected static final String ADD_GROUPING = "AddGrouping";
51 protected static final String CATEGORY = "category";
52 protected static final String SUB_CATEGORY = "sub-category";
53 protected static final String GROUPING = "grouping";
55 public GroupingTest() {
56 super(name, GroupingTest.class.getName());
60 public static TestName name = new TestName();
62 private CategoryDefinition productCategoryDefinition;
63 private CategoryDefinition productCategoryDefinition2;
65 private SubCategoryDefinition productSubCategoryDefinition;
66 private SubCategoryDefinition productSubCategoryDefinition2;
67 private SubCategoryDefinition productSubCategoryDefinition3;
69 private GroupingDefinition productGroupingDefinition;
70 private GroupingDefinition productGroupingDefinition2;
71 private GroupingDefinition productGroupingDefinition3;
74 public void init() throws Exception {
77 productCategoryDefinition = new CategoryDefinition();
78 productCategoryDefinition.setName("Category1");
79 productCategoryDefinition2 = new CategoryDefinition();
80 productCategoryDefinition2.setName("Category2");
83 productSubCategoryDefinition = new SubCategoryDefinition();
84 productSubCategoryDefinition.setName("SubCategory1");
86 productSubCategoryDefinition2 = new SubCategoryDefinition();
87 productSubCategoryDefinition2.setName("SubCategory2");
89 productSubCategoryDefinition3 = new SubCategoryDefinition();
90 productSubCategoryDefinition3.setName("SubCategory1");
93 productGroupingDefinition = new GroupingDefinition();
94 productGroupingDefinition.setName("Grouping1");
96 productGroupingDefinition2 = new GroupingDefinition();
97 productGroupingDefinition2.setName("Grouping2");
99 productGroupingDefinition3 = new GroupingDefinition();
100 productGroupingDefinition3.setName("Grouping1");
102 // Init product category
103 RestResponse createCategory = CategoryRestUtils.createCategory(productCategoryDefinition,
104 sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
105 assertEquals("Check response code after create category", STATUS_CODE_CREATED,
106 createCategory.getErrorCode().intValue());
107 CategoryDefinition category = ResponseParser.parseToObject(createCategory.getResponse(),
108 CategoryDefinition.class);
109 assertEquals("Check category name after creating category ", productCategoryDefinition.getName(),
111 productCategoryDefinition = category;
113 // Init product category1
114 createCategory = CategoryRestUtils.createCategory(productCategoryDefinition2, sdncProductStrategistUserDetails,
115 PRODUCT_COMPONENT_TYPE);
116 assertEquals("Check response code after create category", STATUS_CODE_CREATED,
117 createCategory.getErrorCode().intValue());
118 category = ResponseParser.parseToObject(createCategory.getResponse(), CategoryDefinition.class);
119 assertEquals("Check category name after creating category ", productCategoryDefinition2.getName(),
121 productCategoryDefinition2 = category;
123 // Init product productSubCategoryDefinition to
124 // productCategoryDefinition
125 RestResponse createSubCategory = CategoryRestUtils.createSubCategory(productSubCategoryDefinition,
126 productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
127 assertEquals("Check response code after create category", STATUS_CODE_CREATED,
128 createSubCategory.getErrorCode().intValue());
129 SubCategoryDefinition subCategory = ResponseParser.parseToObject(createSubCategory.getResponse(),
130 SubCategoryDefinition.class);
131 assertEquals("Check category name after creating category ", productSubCategoryDefinition.getName(),
132 subCategory.getName());
133 productSubCategoryDefinition = subCategory;
134 productCategoryDefinition.addSubCategory(productSubCategoryDefinition);
136 // Init product productSubCategoryDefinition1 to
137 // productCategoryDefinition
138 createSubCategory = CategoryRestUtils.createSubCategory(productSubCategoryDefinition2,
139 productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
140 assertEquals("Check response code after create category", STATUS_CODE_CREATED,
141 createSubCategory.getErrorCode().intValue());
142 subCategory = ResponseParser.parseToObject(createSubCategory.getResponse(), SubCategoryDefinition.class);
143 assertEquals("Check category name after creating category ", productSubCategoryDefinition2.getName(),
144 subCategory.getName());
145 productSubCategoryDefinition2 = subCategory;
146 productCategoryDefinition.addSubCategory(productSubCategoryDefinition2);
148 // Init product productSubCategoryDefinition3 to
149 // productCategoryDefinition2
150 createSubCategory = CategoryRestUtils.createSubCategory(productSubCategoryDefinition3,
151 productCategoryDefinition2, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
152 assertEquals("Check response code after create category", STATUS_CODE_CREATED,
153 createSubCategory.getErrorCode().intValue());
154 subCategory = ResponseParser.parseToObject(createSubCategory.getResponse(), SubCategoryDefinition.class);
155 assertEquals("Check category name after creating category ", productSubCategoryDefinition3.getName(),
156 subCategory.getName());
157 productSubCategoryDefinition3 = subCategory;
158 productCategoryDefinition2.addSubCategory(productSubCategoryDefinition3);
162 public void createProductGroupCategorySuccess() throws Exception {
163 createGroupingSuccess(productGroupingDefinition, productSubCategoryDefinition, productCategoryDefinition,
164 sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE, AUDIT_PRODUCT_TYPE);
167 private void createGroupingSuccess(GroupingDefinition groupingDefinition,
168 SubCategoryDefinition subCategoryDefinition, CategoryDefinition categoryDefinition,
169 User sdncProductStrategistUserDetails, String productComponentType, String auditType) throws Exception {
171 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(groupingDefinition, subCategoryDefinition,
172 categoryDefinition, sdncProductStrategistUserDetails, productComponentType);
173 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
174 createGroupingRest.getErrorCode().intValue());
175 productGroupingDefinition.setNormalizedName("grouping1");
176 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
177 productComponentType);
178 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
179 getAllCategoriesRest.getErrorCode().intValue());
180 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, categoryDefinition.getUniqueId(),
181 subCategoryDefinition.getUniqueId(), groupingDefinition);
184 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, categoryDefinition, subCategoryDefinition,
185 groupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, auditType);
191 public void createProductGroupByProductStrategist() throws Exception {
192 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
193 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
194 PRODUCT_COMPONENT_TYPE);
195 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
196 createGroupingRest.getErrorCode().intValue());
197 productGroupingDefinition.setNormalizedName("grouping1");
198 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
200 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
201 PRODUCT_COMPONENT_TYPE);
202 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
203 getAllCategoriesRest.getErrorCode().intValue());
204 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
205 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
206 productGroupingDefinition);
208 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
209 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
213 public void createProductGroupAlreadyExistInSameCategorySubCategory() throws Exception {
214 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
215 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
216 PRODUCT_COMPONENT_TYPE);
217 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
218 createGroupingRest.getErrorCode().intValue());
219 productGroupingDefinition.setNormalizedName("grouping1");
220 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
221 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
222 PRODUCT_COMPONENT_TYPE);
223 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
224 getAllCategoriesRest.getErrorCode().intValue());
225 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
226 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
227 productGroupingDefinition);
228 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
229 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
230 // Create Same Group already exist on same Category/SubCategory
231 DbUtils.deleteFromEsDbByPattern("_all");
232 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, productSubCategoryDefinition,
233 productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
234 assertEquals("Check response code after create Sub category", STATUS_CODE_ALREADY_EXISTS,
235 createGroupingRest.getErrorCode().intValue());
236 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
237 productGroupingDefinition, sdncProductStrategistUserDetails,
238 ActionStatus.COMPONENT_GROUPING_EXISTS_FOR_SUB_CATEGORY, STATUS_CODE_ALREADY_EXISTS, AUDIT_PRODUCT_TYPE,
239 AUDIT_PRODUCT_TYPE, productGroupingDefinition.getName(), productSubCategoryDefinition.getName());
243 public void createProductGroupUnderSameCategoryButDifferentSubCategory() throws Exception {
244 // Setting : Category-A, Sub-category-B , group : aBcd (display-Name :
245 // ABcd, normalized: abcd) ïƒ [A, B, ABcd]
246 // Action : Category-A, Sub-category-C, group : abcD (display-Name :
247 // ABcd, normalized: abcd) ïƒ [A, C, ABcd]
248 productGroupingDefinition.setName("ABCd");
249 productGroupingDefinition2.setName("abcD");
250 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
251 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
252 PRODUCT_COMPONENT_TYPE);
253 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
254 createGroupingRest.getErrorCode().intValue());
255 productGroupingDefinition.setNormalizedName("abcd");
256 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
257 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
258 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
260 DbUtils.deleteFromEsDbByPattern("_all");
261 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition2,
262 productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
263 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
264 createGroupingRest.getErrorCode().intValue());
265 productGroupingDefinition2.setName("ABCd");
266 productGroupingDefinition2.setNormalizedName("abcd");
267 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2);
268 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition,
269 productSubCategoryDefinition2, productGroupingDefinition2, sdncProductStrategistUserDetails,
270 STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
272 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
273 PRODUCT_COMPONENT_TYPE);
274 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
275 getAllCategoriesRest.getErrorCode().intValue());
276 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
277 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
278 productGroupingDefinition);
279 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
280 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition2.getUniqueId(),
281 productGroupingDefinition2);
285 public void createProductGroupUnderSameSubCategoryButDifferentCategory() throws Exception {
286 // Setting : Category-A, Sub-category-B , group : aBcd (display-Name :
287 // ABcd, normalized: abcd) ïƒ [A, B, ABcd]
288 // : Category-A, Sub-category-C, group : abcD (display-Name : ABcd,
289 // normalized: abcd) ïƒ [A, C, ABcd]
290 // : Category-K, Sub-category-B, group : abcD (display-Name : ABcd,
291 // normalized: abcd) ïƒ [K, B, ABcd]
292 productGroupingDefinition.setName("ABCd");
293 productGroupingDefinition2.setName("abcD");
294 productGroupingDefinition3.setName("aBCd");
295 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
296 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
297 PRODUCT_COMPONENT_TYPE);
298 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
299 createGroupingRest.getErrorCode().intValue());
300 productGroupingDefinition.setNormalizedName("abcd");
301 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
302 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
303 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
305 DbUtils.deleteFromEsDbByPattern("_all");
306 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition2,
307 productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
308 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
309 createGroupingRest.getErrorCode().intValue());
310 productGroupingDefinition2.setName("ABCd");
311 productGroupingDefinition2.setNormalizedName("abcd");
312 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2);
313 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition,
314 productSubCategoryDefinition2, productGroupingDefinition2, sdncProductStrategistUserDetails,
315 STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
316 DbUtils.deleteFromEsDbByPattern("_all");
317 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition3, productSubCategoryDefinition3,
318 productCategoryDefinition2, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
319 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
320 createGroupingRest.getErrorCode().intValue());
321 productGroupingDefinition3.setName("ABCd");
322 productGroupingDefinition3.setNormalizedName("abcd");
323 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition3);
324 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition2,
325 productSubCategoryDefinition3, productGroupingDefinition3, sdncProductStrategistUserDetails,
326 STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
328 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
329 PRODUCT_COMPONENT_TYPE);
330 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
331 getAllCategoriesRest.getErrorCode().intValue());
332 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
333 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
334 productGroupingDefinition);
335 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
336 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition2.getUniqueId(),
337 productGroupingDefinition2);
338 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
339 productCategoryDefinition2.getUniqueId(), productSubCategoryDefinition3.getUniqueId(),
340 productGroupingDefinition3);
345 public void createProductGroupsOnSameCategorySubCategory() throws Exception {
346 // Setting : Category-A, Sub-category-B , group : ABcd (display-Name :
347 // ABcd, normalized: abcd) [A ,B, ABcd]
348 // Action : Category-A, Sub-category-B, group : ZXcv (display-Name :
349 // ZXcv, normalized: zxcv) [A, B, ZXcv]
350 productGroupingDefinition.setName("ABcd");
351 productGroupingDefinition2.setName("ZXcv");
352 productGroupingDefinition2.setNormalizedName("zxcv");
353 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
354 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
355 PRODUCT_COMPONENT_TYPE);
356 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
357 createGroupingRest.getErrorCode().intValue());
358 productGroupingDefinition.setNormalizedName("abcd");
359 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
360 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
361 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
363 DbUtils.deleteFromEsDbByPattern("_all");
364 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition,
365 productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
366 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
367 createGroupingRest.getErrorCode().intValue());
368 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2);
369 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
370 productGroupingDefinition2, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
372 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
373 PRODUCT_COMPONENT_TYPE);
374 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
375 getAllCategoriesRest.getErrorCode().intValue());
376 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
377 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
378 productGroupingDefinition);
379 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
380 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
381 productGroupingDefinition2);
385 public void createProductGroupUnderDifferentCategory() throws Exception {
386 // Setting : Category-A, Sub-category-B , group : aBcd (display-Name :
387 // ABcd, normalized: abcd) [A ,B, ABcd]
388 // Action : Category-K, Sub-category-B, group : abcD (display-Name :
389 // ABcd, normalized: abcd) [K, B, ABcd]
390 // productGroupingDefinition.setName("ABCd");
391 productGroupingDefinition.setName("ABcD");
392 productGroupingDefinition2.setName("abcD");
393 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
394 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
395 PRODUCT_COMPONENT_TYPE);
396 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
397 createGroupingRest.getErrorCode().intValue());
398 productGroupingDefinition.setNormalizedName("abcd");
399 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
400 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
401 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
403 DbUtils.deleteFromEsDbByPattern("_all");
404 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition3,
405 productCategoryDefinition2, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
406 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
407 createGroupingRest.getErrorCode().intValue());
408 productGroupingDefinition2.setNormalizedName("abcd");
409 productGroupingDefinition2.setName("ABcD");
410 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2);
411 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition2,
412 productSubCategoryDefinition3, productGroupingDefinition2, sdncProductStrategistUserDetails,
413 STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
415 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
416 PRODUCT_COMPONENT_TYPE);
417 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
418 getAllCategoriesRest.getErrorCode().intValue());
419 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
420 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
421 productGroupingDefinition);
422 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
423 productCategoryDefinition2.getUniqueId(), productSubCategoryDefinition3.getUniqueId(),
424 productGroupingDefinition2);
429 public void createProductGroupByNonProductStrategist() throws Exception {
430 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
431 productSubCategoryDefinition, productCategoryDefinition, sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE);
432 assertEquals("Check response code after create product group", STATUS_CODE_RESTRICTED_OPERATION,
433 createGroupingRest.getErrorCode().intValue());
434 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
435 PRODUCT_COMPONENT_TYPE);
436 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
437 getAllCategoriesRest.getErrorCode().intValue());
438 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
439 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
440 productGroupingDefinition);
442 productCategoryDefinition.setName(productCategoryDefinition.getUniqueId());
443 productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId());
444 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
445 productGroupingDefinition, sdncAdminUserDetails, ActionStatus.RESTRICTED_OPERATION,
446 STATUS_CODE_RESTRICTED_OPERATION, AUDIT_PRODUCT_TYPE);
449 // @Ignore("DE176245")
451 public void createProductGroupForNonExistingComponentType() throws Exception {
452 String nonSupportedComponentType = "NonExistingComponentType"; // instead
454 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
455 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
456 nonSupportedComponentType);
457 assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT,
458 createGroupingRest.getErrorCode().intValue());
459 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
460 PRODUCT_COMPONENT_TYPE);
461 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
462 getAllCategoriesRest.getErrorCode().intValue());
463 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
464 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
465 productGroupingDefinition);
467 productCategoryDefinition.setName(productCategoryDefinition.getUniqueId());
468 productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId());
469 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
470 productGroupingDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT,
471 STATUS_CODE_INVALID_CONTENT, nonSupportedComponentType);
474 // @Ignore("DE176245")
476 public void createResourceGroup() throws Exception {
477 // Resource doesn't have group
478 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
479 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
480 RESOURCE_COMPONENT_TYPE);
481 assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT,
482 createGroupingRest.getErrorCode().intValue());
483 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
484 PRODUCT_COMPONENT_TYPE);
485 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
486 getAllCategoriesRest.getErrorCode().intValue());
487 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
488 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
489 productGroupingDefinition);
491 productCategoryDefinition.setName(productCategoryDefinition.getUniqueId());
492 productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId());
493 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
494 productGroupingDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT,
495 STATUS_CODE_INVALID_CONTENT, AUDIT_RESOURCE_TYPE);
498 // @Ignore("DE176245")
500 public void createServiceGroup() throws Exception {
501 // Service doesn't have group
502 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
503 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
504 SERVICE_COMPONENT_TYPE);
505 assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT,
506 createGroupingRest.getErrorCode().intValue());
507 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
508 PRODUCT_COMPONENT_TYPE);
509 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
510 getAllCategoriesRest.getErrorCode().intValue());
511 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
512 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
513 productGroupingDefinition);
515 productCategoryDefinition.setName(productCategoryDefinition.getUniqueId());
516 productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId());
517 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
518 productGroupingDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT,
519 STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE);
523 public void createProductGroupForNonExistingCategory() throws Exception {
525 CategoryDefinition productCategoryDefinition100 = new CategoryDefinition();
526 productCategoryDefinition100.setName("category.nonexistingCategory");
527 productCategoryDefinition100.setUniqueId("category.nonexistingCategory");
528 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
529 productSubCategoryDefinition, productCategoryDefinition100, sdncProductStrategistUserDetails,
530 PRODUCT_COMPONENT_TYPE);
531 assertEquals("Check response code after create Sub category", STATUS_CODE_NOT_FOUND,
532 createGroupingRest.getErrorCode().intValue());
533 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
534 PRODUCT_COMPONENT_TYPE);
535 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
536 getAllCategoriesRest.getErrorCode().intValue());
537 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
538 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
539 productGroupingDefinition);
541 productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId());
542 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition100,
543 productSubCategoryDefinition, productGroupingDefinition, sdncProductStrategistUserDetails,
544 ActionStatus.COMPONENT_CATEGORY_NOT_FOUND, STATUS_CODE_NOT_FOUND, AUDIT_PRODUCT_TYPE,
545 PRODUCT_COMPONENT_TYPE, CATEGORY, "");
549 public void createProductGroupForNonExistingSunCategory() throws Exception {
550 throw new SkipException(
551 "Skipping - failed in audit validation expected \"products\" actual result was \"product\" ");
552 // SubCategoryDefinition productSubCategoryDefinition100 = new
553 // SubCategoryDefinition();
554 // productSubCategoryDefinition100.setUniqueId("category.nonexistingSubCategory");
555 // RestResponse createGroupingRest =
556 // CategoryRestUtils.createGrouping(productGroupingDefinition,
557 // productSubCategoryDefinition100, productCategoryDefinition,
558 // sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
559 // assertEquals("Check response code after create Sub category",
560 // STATUS_CODE_NOT_FOUND, createGroupingRest.getErrorCode().intValue());
561 // RestResponse getAllCategoriesRest =
562 // CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
563 // PRODUCT_COMPONENT_TYPE);
564 // assertEquals("Check response code after get all categories ",
565 // STATUS_CODE_SUCCESS, getAllCategoriesRest.getErrorCode().intValue());
566 // CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
567 // productCategoryDefinition.getUniqueId(),
568 // productSubCategoryDefinition.getUniqueId(),
569 // productGroupingDefinition);
570 // //Audit validation
571 // productSubCategoryDefinition100.setName(productSubCategoryDefinition100.getUniqueId());
572 // AuditValidationUtils.groupingAuditFailure(ADD_GROUPING ,
573 // productCategoryDefinition, productSubCategoryDefinition100,
574 // productGroupingDefinition, sdncProductStrategistUserDetails,
575 // ActionStatus.COMPONENT_CATEGORY_NOT_FOUND,
576 // STATUS_CODE_NOT_FOUND,AUDIT_PRODUCT_TYPE, PRODUCT_COMPONENT_TYPE,
577 // SUB_CATEGORY, "");
581 public void ProductGroupAllowedcharacters_01() throws Exception {
582 productGroupingDefinition.setName("1234AbcdE-");
583 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
584 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
585 PRODUCT_COMPONENT_TYPE);
586 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
587 createGroupingRest.getErrorCode().intValue());
588 productGroupingDefinition.setNormalizedName("1234abcde-");
589 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
590 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
591 PRODUCT_COMPONENT_TYPE);
592 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
593 getAllCategoriesRest.getErrorCode().intValue());
594 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
595 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
596 productGroupingDefinition);
598 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
599 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
603 public void ProductGroupAllowedcharacters_02() throws Exception {
604 productGroupingDefinition.setName("1234AbcdE+");
605 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
606 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
607 PRODUCT_COMPONENT_TYPE);
608 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
609 createGroupingRest.getErrorCode().intValue());
610 productGroupingDefinition.setNormalizedName("1234abcde+");
611 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
612 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
613 PRODUCT_COMPONENT_TYPE);
614 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
615 getAllCategoriesRest.getErrorCode().intValue());
616 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
617 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
618 productGroupingDefinition);
620 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
621 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
625 public void ProductGroupAllowedcharacters_03() throws Exception {
626 productGroupingDefinition.setName("1234AbcdE&");
627 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
628 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
629 PRODUCT_COMPONENT_TYPE);
630 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
631 createGroupingRest.getErrorCode().intValue());
632 productGroupingDefinition.setNormalizedName("1234abcde&");
633 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
634 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
635 PRODUCT_COMPONENT_TYPE);
636 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
637 getAllCategoriesRest.getErrorCode().intValue());
638 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
639 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
640 productGroupingDefinition);
642 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
643 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
647 public void ProductGroupAllowedcharacters_04() throws Exception {
648 productGroupingDefinition.setName("1234AbcdE-");
649 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
650 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
651 PRODUCT_COMPONENT_TYPE);
652 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
653 createGroupingRest.getErrorCode().intValue());
654 productGroupingDefinition.setNormalizedName("1234abcde-");
655 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
656 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
657 PRODUCT_COMPONENT_TYPE);
658 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
659 getAllCategoriesRest.getErrorCode().intValue());
660 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
661 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
662 productGroupingDefinition);
664 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
665 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
669 public void ProductGroupAllowedcharacters_05() throws Exception {
670 productGroupingDefinition.setName("1234AbcdE+");
671 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
672 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
673 PRODUCT_COMPONENT_TYPE);
674 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
675 createGroupingRest.getErrorCode().intValue());
676 productGroupingDefinition.setNormalizedName("1234abcde+");
677 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
678 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
679 PRODUCT_COMPONENT_TYPE);
680 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
681 getAllCategoriesRest.getErrorCode().intValue());
682 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
683 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
684 productGroupingDefinition);
686 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
687 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
691 public void ProductGroupAllowedcharacters_06() throws Exception {
692 productGroupingDefinition.setName("1234AbcdE.");
693 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
694 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
695 PRODUCT_COMPONENT_TYPE);
696 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
697 createGroupingRest.getErrorCode().intValue());
698 productGroupingDefinition.setNormalizedName("1234abcde.");
699 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
700 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
701 PRODUCT_COMPONENT_TYPE);
702 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
703 getAllCategoriesRest.getErrorCode().intValue());
704 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
705 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
706 productGroupingDefinition);
708 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
709 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
713 public void ProductGroupAllowedcharacters_07() throws Exception {
714 productGroupingDefinition.setName("1234AbcdE'");
715 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
716 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
717 PRODUCT_COMPONENT_TYPE);
718 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
719 createGroupingRest.getErrorCode().intValue());
720 productGroupingDefinition.setNormalizedName("1234abcde'");
721 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
722 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
723 PRODUCT_COMPONENT_TYPE);
724 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
725 getAllCategoriesRest.getErrorCode().intValue());
726 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
727 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
728 productGroupingDefinition);
730 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
731 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
735 public void ProductGroupAllowedcharacters_08() throws Exception {
736 productGroupingDefinition.setName("1234AbcdE=");
737 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
738 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
739 PRODUCT_COMPONENT_TYPE);
740 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
741 createGroupingRest.getErrorCode().intValue());
742 productGroupingDefinition.setNormalizedName("1234abcde=");
743 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
744 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
745 PRODUCT_COMPONENT_TYPE);
746 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
747 getAllCategoriesRest.getErrorCode().intValue());
748 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
749 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
750 productGroupingDefinition);
752 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
753 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
757 public void ProductGroupAllowedcharacters_09() throws Exception {
758 productGroupingDefinition.setName("1234AbcdE:");
759 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
760 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
761 PRODUCT_COMPONENT_TYPE);
762 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
763 createGroupingRest.getErrorCode().intValue());
764 productGroupingDefinition.setNormalizedName("1234abcde:");
765 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
766 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
767 PRODUCT_COMPONENT_TYPE);
768 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
769 getAllCategoriesRest.getErrorCode().intValue());
770 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
771 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
772 productGroupingDefinition);
774 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
775 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
779 public void ProductGroupAllowedcharacters_10() throws Exception {
780 productGroupingDefinition.setName("1234AbcdE@");
781 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
782 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
783 PRODUCT_COMPONENT_TYPE);
784 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
785 createGroupingRest.getErrorCode().intValue());
786 productGroupingDefinition.setNormalizedName("1234abcde@");
787 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
788 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
789 PRODUCT_COMPONENT_TYPE);
790 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
791 getAllCategoriesRest.getErrorCode().intValue());
792 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
793 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
794 productGroupingDefinition);
796 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
797 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
801 public void ProductGroupAllowedcharacters_11() throws Exception {
802 productGroupingDefinition.setName("1234AbcdE_");
803 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
804 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
805 PRODUCT_COMPONENT_TYPE);
806 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
807 createGroupingRest.getErrorCode().intValue());
808 productGroupingDefinition.setNormalizedName("1234abcde_");
809 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
810 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
811 PRODUCT_COMPONENT_TYPE);
812 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
813 getAllCategoriesRest.getErrorCode().intValue());
814 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
815 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
816 productGroupingDefinition);
818 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
819 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
823 public void ProductGroupAllowedcharacters_12() throws Exception {
824 productGroupingDefinition.setName("1234AbcdE#");
825 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
826 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
827 PRODUCT_COMPONENT_TYPE);
828 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
829 createGroupingRest.getErrorCode().intValue());
830 productGroupingDefinition.setNormalizedName("1234abcde#");
831 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
832 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
833 PRODUCT_COMPONENT_TYPE);
834 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
835 getAllCategoriesRest.getErrorCode().intValue());
836 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
837 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
838 productGroupingDefinition);
840 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
841 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
845 public void ProductGroupAllowedcharacters_13() throws Exception {
846 productGroupingDefinition.setName("1234AbcdE d");
847 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
848 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
849 PRODUCT_COMPONENT_TYPE);
850 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
851 createGroupingRest.getErrorCode().intValue());
852 productGroupingDefinition.setName("1234AbcdE D");
853 productGroupingDefinition.setNormalizedName("1234abcde d");
854 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
855 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
856 PRODUCT_COMPONENT_TYPE);
857 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
858 getAllCategoriesRest.getErrorCode().intValue());
859 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
860 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
861 productGroupingDefinition);
863 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
864 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
868 public void groupNameValidation_RemoveSpaceFromBeginning() throws Exception {
869 productGroupingDefinition.setName(" Category01");
870 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
871 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
872 PRODUCT_COMPONENT_TYPE);
873 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
874 createGroupingRest.getErrorCode().intValue());
875 productGroupingDefinition.setNormalizedName("category01");
876 productGroupingDefinition.setName("Category01");
877 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
878 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
879 PRODUCT_COMPONENT_TYPE);
880 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
881 getAllCategoriesRest.getErrorCode().intValue());
882 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
883 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
884 productGroupingDefinition);
886 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
887 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
891 public void groupNameValidation_RemoveSpaceFromEnd() throws Exception {
892 productGroupingDefinition.setName("Category01 ");
893 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
894 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
895 PRODUCT_COMPONENT_TYPE);
896 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
897 createGroupingRest.getErrorCode().intValue());
898 productGroupingDefinition.setNormalizedName("category01");
899 productGroupingDefinition.setName("Category01");
900 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
901 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
902 PRODUCT_COMPONENT_TYPE);
903 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
904 getAllCategoriesRest.getErrorCode().intValue());
905 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
906 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
907 productGroupingDefinition);
909 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
910 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
914 public void groupNameValidation_RemoveExtraSpace() throws Exception {
915 productGroupingDefinition.setName("Category 02");
916 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
917 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
918 PRODUCT_COMPONENT_TYPE);
919 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
920 createGroupingRest.getErrorCode().intValue());
921 productGroupingDefinition.setNormalizedName("category 02");
922 productGroupingDefinition.setName("Category 02");
923 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
924 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
925 PRODUCT_COMPONENT_TYPE);
926 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
927 getAllCategoriesRest.getErrorCode().intValue());
928 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
929 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
930 productGroupingDefinition);
932 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
933 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
937 public void groupNameValidation_RemoveExtraAmpersand() throws Exception {
938 productGroupingDefinition.setName("Category&& &02");
939 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
940 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
941 PRODUCT_COMPONENT_TYPE);
942 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
943 createGroupingRest.getErrorCode().intValue());
944 productGroupingDefinition.setNormalizedName("category& &02");
945 productGroupingDefinition.setName("Category& &02");
946 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
947 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
948 PRODUCT_COMPONENT_TYPE);
949 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
950 getAllCategoriesRest.getErrorCode().intValue());
951 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
952 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
953 productGroupingDefinition);
955 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
956 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
960 public void groupNameValidation_RemoveExtraDash() throws Exception {
961 productGroupingDefinition.setName("CategorY-- --02");
962 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
963 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
964 PRODUCT_COMPONENT_TYPE);
965 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
966 createGroupingRest.getErrorCode().intValue());
967 productGroupingDefinition.setNormalizedName("category- -02");
968 productGroupingDefinition.setName("CategorY- -02");
969 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
970 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
971 PRODUCT_COMPONENT_TYPE);
972 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
973 getAllCategoriesRest.getErrorCode().intValue());
974 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
975 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
976 productGroupingDefinition);
978 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
979 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
983 public void groupNameValidation_RemoveExtraPlus() throws Exception {
984 productGroupingDefinition.setName("CateGory++++ +02");
985 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
986 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
987 PRODUCT_COMPONENT_TYPE);
988 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
989 createGroupingRest.getErrorCode().intValue());
990 productGroupingDefinition.setName("CateGory+ +02");
991 productGroupingDefinition.setNormalizedName("category+ +02");
992 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
993 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
994 PRODUCT_COMPONENT_TYPE);
995 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
996 getAllCategoriesRest.getErrorCode().intValue());
997 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
998 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
999 productGroupingDefinition);
1001 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1002 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1006 public void groupNameValidation_RemoveExtraPeriod() throws Exception {
1007 productGroupingDefinition.setName("Category.... .02");
1008 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1009 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1010 PRODUCT_COMPONENT_TYPE);
1011 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1012 createGroupingRest.getErrorCode().intValue());
1013 productGroupingDefinition.setName("Category. .02");
1014 productGroupingDefinition.setNormalizedName("category. .02");
1015 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1016 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1017 PRODUCT_COMPONENT_TYPE);
1018 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1019 getAllCategoriesRest.getErrorCode().intValue());
1020 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1021 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1022 productGroupingDefinition);
1024 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1025 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1029 public void groupNameValidation_RemoveExtraApostrophe() throws Exception {
1030 productGroupingDefinition.setName("CaTegory''' '02");
1031 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1032 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1033 PRODUCT_COMPONENT_TYPE);
1034 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1035 createGroupingRest.getErrorCode().intValue());
1036 productGroupingDefinition.setName("CaTegory' '02");
1037 productGroupingDefinition.setNormalizedName("category' '02");
1038 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1039 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1040 PRODUCT_COMPONENT_TYPE);
1041 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1042 getAllCategoriesRest.getErrorCode().intValue());
1043 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1044 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1045 productGroupingDefinition);
1047 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1048 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1052 public void groupNameValidation_RemoveExtraHashtag() throws Exception {
1053 productGroupingDefinition.setName("Category### #02");
1054 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1055 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1056 PRODUCT_COMPONENT_TYPE);
1057 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1058 createGroupingRest.getErrorCode().intValue());
1059 productGroupingDefinition.setName("Category# #02");
1060 productGroupingDefinition.setNormalizedName("category# #02");
1061 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1062 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1063 PRODUCT_COMPONENT_TYPE);
1064 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1065 getAllCategoriesRest.getErrorCode().intValue());
1066 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1067 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1068 productGroupingDefinition);
1070 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1071 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1075 public void groupNameValidation_RemoveExtrEequal() throws Exception {
1076 productGroupingDefinition.setName("Category=== =02");
1077 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1078 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1079 PRODUCT_COMPONENT_TYPE);
1080 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1081 createGroupingRest.getErrorCode().intValue());
1082 productGroupingDefinition.setName("Category= =02");
1083 productGroupingDefinition.setNormalizedName("category= =02");
1084 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1085 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1086 PRODUCT_COMPONENT_TYPE);
1087 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1088 getAllCategoriesRest.getErrorCode().intValue());
1089 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1090 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1091 productGroupingDefinition);
1093 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1094 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1098 public void groupNameValidation_RemoveExtrColon() throws Exception {
1099 productGroupingDefinition.setName("Category::: :02");
1100 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1101 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1102 PRODUCT_COMPONENT_TYPE);
1103 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1104 createGroupingRest.getErrorCode().intValue());
1105 productGroupingDefinition.setName("Category: :02");
1106 productGroupingDefinition.setNormalizedName("category: :02");
1107 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1108 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1109 PRODUCT_COMPONENT_TYPE);
1110 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1111 getAllCategoriesRest.getErrorCode().intValue());
1112 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1113 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1114 productGroupingDefinition);
1116 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1117 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1121 public void groupNameValidation_RemoveExtrAt() throws Exception {
1122 productGroupingDefinition.setName("Category@@@ @a2");
1123 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1124 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1125 PRODUCT_COMPONENT_TYPE);
1126 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1127 createGroupingRest.getErrorCode().intValue());
1128 productGroupingDefinition.setName("Category@ @a2");
1129 productGroupingDefinition.setNormalizedName("category@ @a2");
1130 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1131 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1132 PRODUCT_COMPONENT_TYPE);
1133 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1134 getAllCategoriesRest.getErrorCode().intValue());
1135 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1136 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1137 productGroupingDefinition);
1139 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1140 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1144 public void groupNameValidation_RemoveExtraUnderscore() throws Exception {
1145 productGroupingDefinition.setName("Category___ _22");
1146 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1147 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1148 PRODUCT_COMPONENT_TYPE);
1149 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1150 createGroupingRest.getErrorCode().intValue());
1151 productGroupingDefinition.setName("Category_ _22");
1152 productGroupingDefinition.setNormalizedName("category_ _22");
1153 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1154 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1155 PRODUCT_COMPONENT_TYPE);
1156 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1157 getAllCategoriesRest.getErrorCode().intValue());
1158 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1159 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1160 productGroupingDefinition);
1162 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1163 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1167 public void groupNameValidation_FirstWordStartWithNumber() throws Exception {
1168 productGroupingDefinition.setName("1Category one");
1169 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1170 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1171 PRODUCT_COMPONENT_TYPE);
1172 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1173 createGroupingRest.getErrorCode().intValue());
1174 productGroupingDefinition.setName("1Category One");
1175 productGroupingDefinition.setNormalizedName("1category one");
1176 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1177 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1178 PRODUCT_COMPONENT_TYPE);
1179 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1180 getAllCategoriesRest.getErrorCode().intValue());
1181 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1182 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1183 productGroupingDefinition);
1185 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1186 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1190 public void groupNameValidation_FirstWordStartWithNonAlphaNumeric() throws Exception { // The
1202 char invalidChars[] = { '&', '-', '+', '.', '\'', '#', '=', ':', '@', '_' };
1203 RestResponse createGroupingRest;
1204 RestResponse getAllCategoriesRest;
1205 for (int i = 0; i < invalidChars.length; i++) {
1206 DbUtils.deleteFromEsDbByPattern("_all");
1207 productGroupingDefinition.setName(invalidChars[i] + "AbcD123");
1208 productGroupingDefinition.setNormalizedName((invalidChars[i] + "AbcD123").toLowerCase());
1209 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1210 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1211 PRODUCT_COMPONENT_TYPE);
1212 assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT,
1213 createGroupingRest.getErrorCode().intValue());
1215 getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE);
1216 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1217 getAllCategoriesRest.getErrorCode().intValue());
1218 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
1219 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1220 productGroupingDefinition);
1225 public void groupNameValidation_ReplaceAndWithAmpersand_01() throws Exception {
1226 productGroupingDefinition.setName("At and T");
1227 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1228 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1229 PRODUCT_COMPONENT_TYPE);
1230 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1231 createGroupingRest.getErrorCode().intValue());
1232 productGroupingDefinition.setName("At & T");
1233 productGroupingDefinition.setNormalizedName("at & t");
1234 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1235 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1236 PRODUCT_COMPONENT_TYPE);
1237 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1238 getAllCategoriesRest.getErrorCode().intValue());
1239 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1240 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1241 productGroupingDefinition);
1243 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1244 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1248 public void groupNameValidation_ReplaceAndWithAmpersand_02() throws Exception {
1249 productGroupingDefinition.setName("At and t");
1250 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1251 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1252 PRODUCT_COMPONENT_TYPE);
1253 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1254 createGroupingRest.getErrorCode().intValue());
1255 productGroupingDefinition.setName("At & T");
1256 productGroupingDefinition.setNormalizedName("at & t");
1257 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1258 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1259 PRODUCT_COMPONENT_TYPE);
1260 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1261 getAllCategoriesRest.getErrorCode().intValue());
1262 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1263 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1264 productGroupingDefinition);
1266 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1267 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1271 public void groupNameValidation_ReplaceAndWithAmpersand_03() throws Exception {
1272 productGroupingDefinition.setName("Atand T");
1273 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1274 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1275 PRODUCT_COMPONENT_TYPE);
1276 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1277 createGroupingRest.getErrorCode().intValue());
1278 productGroupingDefinition.setNormalizedName("atand t");
1279 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1280 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1281 PRODUCT_COMPONENT_TYPE);
1282 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1283 getAllCategoriesRest.getErrorCode().intValue());
1284 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1285 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1286 productGroupingDefinition);
1288 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1289 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1293 public void groupNameValidation_ReplaceAndWithAmpersand_04() throws Exception {
1294 productGroupingDefinition.setName("At andT");
1295 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1296 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1297 PRODUCT_COMPONENT_TYPE);
1298 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1299 createGroupingRest.getErrorCode().intValue());
1300 productGroupingDefinition.setNormalizedName("at andt");
1301 productGroupingDefinition.setName("At AndT");
1302 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1303 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1304 PRODUCT_COMPONENT_TYPE);
1305 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1306 getAllCategoriesRest.getErrorCode().intValue());
1307 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1308 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1309 productGroupingDefinition);
1311 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1312 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1316 public void groupNameValidation_ReplaceAndWithAmpersand_05() throws Exception {
1317 productGroupingDefinition.setName(" and AttT");
1318 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1319 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1320 PRODUCT_COMPONENT_TYPE);
1321 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1322 createGroupingRest.getErrorCode().intValue());
1323 productGroupingDefinition.setNormalizedName("and attt");
1324 productGroupingDefinition.setName("And AttT");
1325 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1326 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1327 PRODUCT_COMPONENT_TYPE);
1328 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1329 getAllCategoriesRest.getErrorCode().intValue());
1330 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1331 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1332 productGroupingDefinition);
1334 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1335 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1339 public void groupNameValidation_ReplaceAndWithAmpersand_06() throws Exception {
1340 productGroupingDefinition.setName("AttT and ");
1341 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1342 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1343 PRODUCT_COMPONENT_TYPE);
1344 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1345 createGroupingRest.getErrorCode().intValue());
1346 productGroupingDefinition.setNormalizedName("attt and");
1347 productGroupingDefinition.setName("AttT And");
1348 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1349 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1350 PRODUCT_COMPONENT_TYPE);
1351 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1352 getAllCategoriesRest.getErrorCode().intValue());
1353 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1354 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1355 productGroupingDefinition);
1357 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1358 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1362 public void groupNameValidation_ReplaceAndWithAmpersand_07() throws Exception {
1363 productGroupingDefinition.setName(" and a");
1364 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1365 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1366 PRODUCT_COMPONENT_TYPE);
1367 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1368 createGroupingRest.getErrorCode().intValue());
1369 productGroupingDefinition.setNormalizedName("and a");
1370 productGroupingDefinition.setName("And a");
1371 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1372 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1373 PRODUCT_COMPONENT_TYPE);
1374 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1375 getAllCategoriesRest.getErrorCode().intValue());
1376 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1377 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1378 productGroupingDefinition);
1380 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1381 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1385 public void groupNameValidationMaxLength() throws Exception {
1386 productGroupingDefinition.setName("AsdfghjQ234567890@#.&:+-_");
1387 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1388 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1389 PRODUCT_COMPONENT_TYPE);
1390 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1391 createGroupingRest.getErrorCode().intValue());
1392 productGroupingDefinition.setNormalizedName("asdfghjq234567890@#.&:+-_");
1393 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1394 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1395 PRODUCT_COMPONENT_TYPE);
1396 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1397 getAllCategoriesRest.getErrorCode().intValue());
1398 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1399 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1400 productGroupingDefinition);
1402 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1403 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1407 public void groupNameValidationMaxLengthAfterNormalization() throws Exception {
1408 productGroupingDefinition.setName(" A jQ234 @@@___ +++ At and T and and ");
1409 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1410 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1411 PRODUCT_COMPONENT_TYPE);
1412 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1413 createGroupingRest.getErrorCode().intValue());
1414 productGroupingDefinition.setNormalizedName("a jq234 @_ + at & t & and");
1415 productGroupingDefinition.setName("A JQ234 @_ + At & T & And");
1416 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1417 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1418 PRODUCT_COMPONENT_TYPE);
1419 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1420 getAllCategoriesRest.getErrorCode().intValue());
1421 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1422 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1423 productGroupingDefinition);
1425 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1426 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1430 public void groupNameValidationExceedMaxLengthAfterNormalization() throws Exception {
1431 productGroupingDefinition.setName(" AbdfghBCVa jQ234 @@___ +++ At and T ");
1432 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1433 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1434 PRODUCT_COMPONENT_TYPE);
1435 assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT,
1436 createGroupingRest.getErrorCode().intValue());
1437 productGroupingDefinition.setNormalizedName("abdfghbcva jq234 @_ + at&t");
1438 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1439 PRODUCT_COMPONENT_TYPE);
1440 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1441 getAllCategoriesRest.getErrorCode().intValue());
1442 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
1443 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1444 productGroupingDefinition);
1446 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1447 productGroupingDefinition, sdncProductStrategistUserDetails,
1448 ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE,
1449 AUDIT_PRODUCT_TYPE, GROUPING);
1453 public void groupNameValidationMinLengthAfterNormalization() throws Exception {
1454 productGroupingDefinition.setName(" At&&&&&&&&&&&&t ");
1455 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1456 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1457 PRODUCT_COMPONENT_TYPE);
1458 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1459 createGroupingRest.getErrorCode().intValue());
1460 productGroupingDefinition.setNormalizedName("at&t");
1461 productGroupingDefinition.setName("At&t");
1462 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1463 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1464 PRODUCT_COMPONENT_TYPE);
1465 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1466 getAllCategoriesRest.getErrorCode().intValue());
1467 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1468 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1469 productGroupingDefinition);
1471 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1472 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1476 public void groupNameValidationLessThanMinLengthAfterNormalization() throws Exception {
1477 productGroupingDefinition.setName(" A&&&&&&&&&&&&T ");
1478 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1479 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1480 PRODUCT_COMPONENT_TYPE);
1481 assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT,
1482 createGroupingRest.getErrorCode().intValue());
1483 productGroupingDefinition.setNormalizedName("a&t");
1484 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1485 PRODUCT_COMPONENT_TYPE);
1486 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1487 getAllCategoriesRest.getErrorCode().intValue());
1488 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
1489 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1490 productGroupingDefinition);
1492 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1493 productGroupingDefinition, sdncProductStrategistUserDetails,
1494 ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE,
1495 AUDIT_PRODUCT_TYPE, GROUPING);
1499 public void groupNameValidationIsEmpty() throws Exception {
1500 productGroupingDefinition.setName("");
1501 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1502 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1503 PRODUCT_COMPONENT_TYPE);
1504 assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT,
1505 createGroupingRest.getErrorCode().intValue());
1506 productGroupingDefinition.setNormalizedName("");
1507 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1508 PRODUCT_COMPONENT_TYPE);
1509 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1510 getAllCategoriesRest.getErrorCode().intValue());
1511 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
1512 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1513 productGroupingDefinition);
1515 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1516 productGroupingDefinition, sdncProductStrategistUserDetails,
1517 ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE,
1518 AUDIT_PRODUCT_TYPE, GROUPING);
1522 public void groupNameValidationInvalidCharacters() throws Exception {
1523 RestResponse createGroupingRest;
1524 RestResponse getAllCategoriesRest;
1525 char invalidChars[] = { '~', '!', '$', '%', '^', '*', '(', ')', '"', '{', '}', '[', ']', '?', '>', '<', '/',
1527 for (int i = 0; i < invalidChars.length; i++) {
1528 DbUtils.deleteFromEsDbByPattern("_all");
1529 productGroupingDefinition.setName("AbcD123" + invalidChars[i]);
1530 createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1531 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1532 PRODUCT_COMPONENT_TYPE);
1533 assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT,
1534 createGroupingRest.getErrorCode().intValue());
1535 productGroupingDefinition.setNormalizedName("");
1536 getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE);
1537 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1538 getAllCategoriesRest.getErrorCode().intValue());
1539 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
1540 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1541 productGroupingDefinition);
1543 AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition,
1544 productSubCategoryDefinition, productGroupingDefinition, sdncProductStrategistUserDetails,
1545 ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE,
1546 AUDIT_PRODUCT_TYPE, GROUPING);
1551 public void groupNameValidationConjunctions_01() throws Exception {
1552 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1553 // 'a', 'an' , 'the') are lower case.
1554 productGroupingDefinition.setName(" bank OF america ");
1555 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1556 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1557 PRODUCT_COMPONENT_TYPE);
1558 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1559 createGroupingRest.getErrorCode().intValue());
1560 productGroupingDefinition.setNormalizedName("bank of america");
1561 productGroupingDefinition.setName("Bank of America");
1562 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1563 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1564 PRODUCT_COMPONENT_TYPE);
1565 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1566 getAllCategoriesRest.getErrorCode().intValue());
1567 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1568 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1569 productGroupingDefinition);
1571 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1572 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1576 public void groupNameValidationConjunctions_02() throws Exception {
1577 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1578 // 'a', 'an' , 'the') are lower case.
1579 productGroupingDefinition.setName("THE america bank ");
1580 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1581 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1582 PRODUCT_COMPONENT_TYPE);
1583 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1584 createGroupingRest.getErrorCode().intValue());
1585 productGroupingDefinition.setName("THE America Bank");
1586 productGroupingDefinition.setNormalizedName("the america bank");
1587 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1588 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1589 PRODUCT_COMPONENT_TYPE);
1590 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1591 getAllCategoriesRest.getErrorCode().intValue());
1592 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1593 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1594 productGroupingDefinition);
1596 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1597 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1601 public void groupNameValidationConjunctions_03() throws Exception {
1602 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1603 // 'a', 'an' , 'the') are lower case.
1604 productGroupingDefinition.setName(" A bank OF america ");
1605 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1606 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1607 PRODUCT_COMPONENT_TYPE);
1608 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1609 createGroupingRest.getErrorCode().intValue());
1610 productGroupingDefinition.setName("A Bank of America");
1611 productGroupingDefinition.setNormalizedName("a bank of america");
1612 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1613 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1614 PRODUCT_COMPONENT_TYPE);
1615 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1616 getAllCategoriesRest.getErrorCode().intValue());
1617 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1618 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1619 productGroupingDefinition);
1621 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1622 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1626 public void groupNameValidationConjunctions_04() throws Exception {
1627 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1628 // 'a', 'an' , 'the') are lower case.
1629 productGroupingDefinition.setName(" bank america is A big ban ");
1630 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1631 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1632 PRODUCT_COMPONENT_TYPE);
1633 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1634 createGroupingRest.getErrorCode().intValue());
1635 productGroupingDefinition.setName("Bank America Is a Big Ban");
1636 productGroupingDefinition.setNormalizedName("bank america is a big ban");
1637 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1638 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1639 PRODUCT_COMPONENT_TYPE);
1640 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1641 getAllCategoriesRest.getErrorCode().intValue());
1642 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1643 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1644 productGroupingDefinition);
1646 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1647 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1651 public void groupNameValidationConjunctions_05() throws Exception {
1652 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1653 // 'a', 'an' , 'the') are lower case.
1654 productGroupingDefinition.setName(" aN apple comPany inC ");
1655 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1656 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1657 PRODUCT_COMPONENT_TYPE);
1658 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1659 createGroupingRest.getErrorCode().intValue());
1660 productGroupingDefinition.setName("AN Apple ComPany InC");
1661 productGroupingDefinition.setNormalizedName("an apple company inc");
1662 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1663 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1664 PRODUCT_COMPONENT_TYPE);
1665 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1666 getAllCategoriesRest.getErrorCode().intValue());
1667 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1668 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1669 productGroupingDefinition);
1671 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1672 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1676 public void groupNameValidationConjunctions_06() throws Exception {
1677 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1678 // 'a', 'an' , 'the') are lower case.
1679 productGroupingDefinition.setName(" eat AN apple ANAN");
1680 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1681 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1682 PRODUCT_COMPONENT_TYPE);
1683 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1684 createGroupingRest.getErrorCode().intValue());
1685 productGroupingDefinition.setName("Eat an Apple ANAN");
1686 productGroupingDefinition.setNormalizedName("eat an apple anan");
1687 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1688 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1689 PRODUCT_COMPONENT_TYPE);
1690 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1691 getAllCategoriesRest.getErrorCode().intValue());
1692 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1693 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1694 productGroupingDefinition);
1696 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1697 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1701 public void groupNameValidationConjunctions_07() throws Exception {
1702 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1703 // 'a', 'an' , 'the') are lower case.
1704 productGroupingDefinition.setName(" united states OF americA ");
1705 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1706 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1707 PRODUCT_COMPONENT_TYPE);
1708 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1709 createGroupingRest.getErrorCode().intValue());
1710 productGroupingDefinition.setName("United States of AmericA");
1711 productGroupingDefinition.setNormalizedName("united states of america");
1712 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1713 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1714 PRODUCT_COMPONENT_TYPE);
1715 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1716 getAllCategoriesRest.getErrorCode().intValue());
1717 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1718 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1719 productGroupingDefinition);
1721 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1722 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1726 public void groupNameValidationConjunctions_08() throws Exception {
1727 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1728 // 'a', 'an' , 'the') are lower case.
1729 productGroupingDefinition.setName(" oF united states OF amer ");
1730 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1731 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1732 PRODUCT_COMPONENT_TYPE);
1733 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1734 createGroupingRest.getErrorCode().intValue());
1735 productGroupingDefinition.setName("OF United States of Amer");
1736 productGroupingDefinition.setNormalizedName("of united states of amer");
1737 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1738 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1739 PRODUCT_COMPONENT_TYPE);
1740 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1741 getAllCategoriesRest.getErrorCode().intValue());
1742 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1743 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1744 productGroupingDefinition);
1746 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1747 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1751 public void groupNameValidationConjunctions_09() throws Exception {
1752 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1753 // 'a', 'an' , 'the') are lower case.
1754 productGroupingDefinition.setName(" to Apple TO at&T TOO ");
1755 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1756 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1757 PRODUCT_COMPONENT_TYPE);
1758 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1759 createGroupingRest.getErrorCode().intValue());
1760 productGroupingDefinition.setName("To Apple to At&T TOO");
1761 productGroupingDefinition.setNormalizedName("to apple to at&t too");
1762 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1763 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1764 PRODUCT_COMPONENT_TYPE);
1765 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1766 getAllCategoriesRest.getErrorCode().intValue());
1767 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1768 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1769 productGroupingDefinition);
1771 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1772 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1776 public void groupNameValidationConjunctions_10() throws Exception {
1777 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1778 // 'a', 'an' , 'the') are lower case.
1779 productGroupingDefinition.setName(" eat apple AS you liiikeas ");
1780 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1781 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1782 PRODUCT_COMPONENT_TYPE);
1783 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1784 createGroupingRest.getErrorCode().intValue());
1785 productGroupingDefinition.setName("Eat Apple as You Liiikeas");
1786 productGroupingDefinition.setNormalizedName("eat apple as you liiikeas");
1787 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1788 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1789 PRODUCT_COMPONENT_TYPE);
1790 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1791 getAllCategoriesRest.getErrorCode().intValue());
1792 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1793 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1794 productGroupingDefinition);
1796 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1797 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1801 public void groupNameValidationConjunctions_11() throws Exception {
1802 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1803 // 'a', 'an' , 'the') are lower case.
1804 productGroupingDefinition.setName(" as you may want ");
1805 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1806 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1807 PRODUCT_COMPONENT_TYPE);
1808 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1809 createGroupingRest.getErrorCode().intValue());
1810 productGroupingDefinition.setName("As You May Want");
1811 productGroupingDefinition.setNormalizedName("as you may want");
1812 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1813 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1814 PRODUCT_COMPONENT_TYPE);
1815 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1816 getAllCategoriesRest.getErrorCode().intValue());
1817 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1818 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1819 productGroupingDefinition);
1821 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1822 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1826 public void groupNameValidationConjunctions_12() throws Exception {
1827 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1828 // 'a', 'an' , 'the') are lower case.
1829 productGroupingDefinition.setName(" the bank OF america ");
1830 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1831 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1832 PRODUCT_COMPONENT_TYPE);
1833 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1834 createGroupingRest.getErrorCode().intValue());
1835 productGroupingDefinition.setName("The Bank of America");
1836 productGroupingDefinition.setNormalizedName("the bank of america");
1837 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1838 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1839 PRODUCT_COMPONENT_TYPE);
1840 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1841 getAllCategoriesRest.getErrorCode().intValue());
1842 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1843 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1844 productGroupingDefinition);
1846 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1847 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1851 public void groupNameValidationConjunctions_13() throws Exception {
1852 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1853 // 'a', 'an' , 'the') are lower case.
1854 productGroupingDefinition.setName(" To tel-toto ");
1855 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1856 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1857 PRODUCT_COMPONENT_TYPE);
1858 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1859 createGroupingRest.getErrorCode().intValue());
1860 productGroupingDefinition.setName("To Tel-toto");
1861 productGroupingDefinition.setNormalizedName("to tel-toto");
1862 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1863 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1864 PRODUCT_COMPONENT_TYPE);
1865 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1866 getAllCategoriesRest.getErrorCode().intValue());
1867 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1868 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1869 productGroupingDefinition);
1871 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1872 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1876 public void groupNameValidationConjunctions_14() throws Exception {
1877 // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as',
1878 // 'a', 'an' , 'the') are lower case.
1879 productGroupingDefinition.setName(" tel-aviv To la ");
1880 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1881 productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails,
1882 PRODUCT_COMPONENT_TYPE);
1883 assertEquals("Check response code after create product group", STATUS_CODE_CREATED,
1884 createGroupingRest.getErrorCode().intValue());
1885 productGroupingDefinition.setName("Tel-aviv to La");
1886 productGroupingDefinition.setNormalizedName("tel-aviv to la");
1887 CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition);
1888 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1889 PRODUCT_COMPONENT_TYPE);
1890 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1891 getAllCategoriesRest.getErrorCode().intValue());
1892 CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1893 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1894 productGroupingDefinition);
1896 AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition,
1897 productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE);
1901 public void createProductGroupHttpCspUserIdIsEmpty() throws Exception {
1902 User sdncPS = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_STRATEGIST1);
1903 sdncPS.setUserId("");
1904 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1905 productSubCategoryDefinition, productCategoryDefinition, sdncPS, PRODUCT_COMPONENT_TYPE);
1906 assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION,
1907 createGroupingRest.getErrorCode().intValue());
1908 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1909 PRODUCT_COMPONENT_TYPE);
1910 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1911 getAllCategoriesRest.getErrorCode().intValue());
1912 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
1913 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1914 productGroupingDefinition);
1916 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name());
1917 ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit();
1918 expectedCatrgoryAuditJavaObject.setAction(ADD_GROUPING);
1919 expectedCatrgoryAuditJavaObject.setModifier("");
1920 expectedCatrgoryAuditJavaObject.setCategoryName(productCategoryDefinition.getUniqueId());
1921 expectedCatrgoryAuditJavaObject.setSubCategoryName(productSubCategoryDefinition.getUniqueId());
1922 expectedCatrgoryAuditJavaObject.setGroupingName(productGroupingDefinition.getName());
1923 expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_PRODUCT_TYPE);
1924 expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION));
1925 expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc());
1926 AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_GROUPING);
1930 public void createProductGroupHttpCspUserIdIsNull() throws Exception {
1931 User sdncPS = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_STRATEGIST1);
1932 sdncPS.setUserId(null);
1933 RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition,
1934 productSubCategoryDefinition, productCategoryDefinition, sdncPS, PRODUCT_COMPONENT_TYPE);
1935 assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION,
1936 createGroupingRest.getErrorCode().intValue());
1937 RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails,
1938 PRODUCT_COMPONENT_TYPE);
1939 assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS,
1940 getAllCategoriesRest.getErrorCode().intValue());
1941 CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest,
1942 productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(),
1943 productGroupingDefinition);
1945 ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name());
1946 ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit();
1947 expectedCatrgoryAuditJavaObject.setAction(ADD_GROUPING);
1948 expectedCatrgoryAuditJavaObject.setModifier("");
1949 expectedCatrgoryAuditJavaObject.setCategoryName(productCategoryDefinition.getUniqueId());
1950 expectedCatrgoryAuditJavaObject.setSubCategoryName(productSubCategoryDefinition.getUniqueId());
1951 expectedCatrgoryAuditJavaObject.setGroupingName(productGroupingDefinition.getName());
1952 expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_PRODUCT_TYPE);
1953 expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION));
1954 expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc());
1955 AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_GROUPING);
1958 ////////////////////////////////////////////////
1959 ///////////////////////////////////////////////
1961 public void getProductCategoryHierarchySuccessFlow() throws Exception {
1962 throw new SkipException(
1963 "Skipping - failed in audit validation expected \"products\" actual result was \"product\" ");
1964 // int numOfGrouping = 3;
1965 // List<GroupingDefinition> groupingList = new ArrayList<>();
1966 // RestResponse restResponse;
1967 // GroupingDefinition grouping;
1968 // String groupingName = productGroupingDefinition.getName();
1969 // for (int i = 0; i < numOfGrouping; i++) {
1970 // productGroupingDefinition.setName(groupingName+i);
1972 // CategoryRestUtils.createGrouping(productGroupingDefinition,
1973 // productSubCategoryDefinition, productCategoryDefinition,
1974 // sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE);
1975 // grouping = ResponseParser.parseToObject(restResponse.getResponse(),
1976 // GroupingDefinition.class);
1977 // groupingList.add(grouping);
1979 // RestResponse getAllCategoriesRest =
1980 // CategoryRestUtils.getAllCategories(sdncProductStrategistUserDetails,
1981 // PRODUCT_COMPONENT_TYPE);
1982 // assertEquals("Check response code after get all categories ",
1983 // STATUS_CODE_SUCCESS, getAllCategoriesRest.getErrorCode().intValue());
1984 // AuditValidationUtils.GetCategoryHierarchyAuditSuccess(GET_CATEGORY_HIERARCHY,
1985 // AUDIT_PRODUCT_TYPE, sdncProductStrategistUserDetails,
1986 // STATUS_CODE_SUCCESS);
1988 // for (GroupingDefinition group : groupingList) {
1989 // CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest,
1990 // productCategoryDefinition.getUniqueId(),
1991 // productSubCategoryDefinition.getUniqueId(), group);