[SDC-29] rebase continue work to align source
[sdc.git] / ui-ci / src / main / java / org / openecomp / sdc / ci / tests / pages / AdminGeneralPage.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.sdc.ci.tests.pages;
22
23 import java.util.List;
24
25 import org.openecomp.sdc.ci.tests.datatypes.DataTestIdEnum;
26 import org.openecomp.sdc.ci.tests.datatypes.UserManagementTab;
27 import org.openecomp.sdc.ci.tests.execute.setup.SetupCDTest;
28 import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
29 import org.openqa.selenium.WebElement;
30
31 import com.aventstack.extentreports.Status;
32
33 public class AdminGeneralPage extends GeneralPageElements {
34
35         public AdminGeneralPage() {
36                 super();
37         }
38         
39         private static UserManagementTab userManagementTab = new UserManagementTab();
40         
41         public static UserManagementTab getUserManagementTab() {
42                 return userManagementTab;
43         }
44
45         public static void selectCategoryManagmetTab() throws Exception {
46         
47                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.AdminPageTabs.CATEGORY_MANAGEMENT.getValue());
48         }
49         
50         public static void selectUserManagmetTab() throws Exception {
51                 
52                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.AdminPageTabs.USER_MANAGEMENT.getValue());
53         }
54         
55         public static List<WebElement> getServiceCategoriesList() throws Exception {
56                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.SERVICE_CATEGORY_HEADER.getValue());
57                 GeneralUIUtils.waitForLoader();
58                 return GeneralUIUtils.getWebElementsListByTestID(DataTestIdEnum.CategoryManagement.SERVICE_CATEGORY_LIST.getValue());
59         }
60         
61         public static List<WebElement> getResourceCategoriesList() throws Exception {
62                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.RESOURCE_CATEGORY_HEADER.getValue());
63                 GeneralUIUtils.waitForLoader();
64                 return GeneralUIUtils.getWebElementsListByTestID(DataTestIdEnum.CategoryManagement.RESOURCE_CATEGORY_LIST.getValue());
65         }
66         
67         public static void createNewServiceCategory(String name) throws Exception {
68                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.SERVICE_CATEGORY_HEADER.getValue());
69                 SetupCDTest.getExtendTest().log(Status.INFO, "Creating service...");
70                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.NEW_CATEGORY_BUTTON.getValue());
71                 GeneralUIUtils.waitForLoader();
72                 defineNewResourceCategoryName(name);
73                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.ModalItems.OK.getValue());
74                 GeneralUIUtils.waitForLoader();
75         }
76         
77         public static void selectElementFromList(List<WebElement> list, String elementToSelect) throws Exception {
78                                 
79                 for (WebElement webElement : list) {
80                         if (webElement.getText().toLowerCase().equals(elementToSelect.toLowerCase())){
81                                 webElement.click();
82                         }
83                 }
84
85         }
86         
87         
88         
89         public static void addSubCategoryToResource(List<WebElement> resourceList, String parentResource, String subCategoryName) throws Exception{
90                 
91                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.RESOURCE_CATEGORY_HEADER.getValue());
92                 selectElementFromList(resourceList, parentResource);
93                 SetupCDTest.getExtendTest().log(Status.INFO, "Creating...");
94                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.NEW_SUB_CATEGORY_BUTTON.getValue());
95                 GeneralUIUtils.waitForLoader();
96                 defineNewResourceCategoryName(subCategoryName);
97                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.ModalItems.OK.getValue());
98                 GeneralUIUtils.waitForLoader();
99                 
100                 
101         }
102         
103         public static void createNewResourceCategory(String name) throws Exception {
104                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.RESOURCE_CATEGORY_HEADER.getValue());
105                 SetupCDTest.getExtendTest().log(Status.INFO, "Creating...");
106                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.CategoryManagement.NEW_CATEGORY_BUTTON.getValue());
107                 GeneralUIUtils.waitForLoader();
108                 defineNewResourceCategoryName(name);
109                 GeneralUIUtils.clickOnElementByTestId(DataTestIdEnum.ModalItems.OK.getValue());
110                 GeneralUIUtils.waitForLoader();
111                 
112         }       
113         
114         public void insertPropertyDefaultValue(String value) {
115                 WebElement propertyValue = GeneralUIUtils
116                                 .getWebElementByTestID(DataTestIdEnum.PropertiesPopupEnum.PROPERTY_VALUE.getValue());
117                 propertyValue.clear();
118                 propertyValue.sendKeys(value);
119         }
120         
121         private static void defineNewResourceCategoryName(String name) {
122                 WebElement categoryNameTextbox = getCategoryName();
123                 categoryNameTextbox.clear();
124                 categoryNameTextbox.sendKeys(name);
125         }
126         
127         private static WebElement getCategoryName() {
128                 return GeneralUIUtils.getWebElementByClassName(DataTestIdEnum.CategoryManagement.NEW_CATEGORY_NAME.getValue());
129         }
130         
131
132 }