summaryrefslogtreecommitdiffstats
path: root/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/utilities/GeneralUIUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'ui-ci/src/main/java/org/openecomp/sdc/ci/tests/utilities/GeneralUIUtils.java')
-rw-r--r--ui-ci/src/main/java/org/openecomp/sdc/ci/tests/utilities/GeneralUIUtils.java1081
1 files changed, 0 insertions, 1081 deletions
diff --git a/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/utilities/GeneralUIUtils.java b/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/utilities/GeneralUIUtils.java
deleted file mode 100644
index 4fd36955ae..0000000000
--- a/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/utilities/GeneralUIUtils.java
+++ /dev/null
@@ -1,1081 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.ci.tests.utilities;
-
-import java.awt.AWTException;
-import java.awt.Robot;
-import java.awt.Toolkit;
-import java.awt.datatransfer.StringSelection;
-import java.awt.event.KeyEvent;
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.lang.reflect.Method;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
-import java.util.concurrent.TimeUnit;
-import java.util.function.Supplier;
-
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.time.StopWatch;
-import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
-import org.openecomp.sdc.be.model.User;
-import org.openecomp.sdc.ci.tests.datatypes.BreadCrumbsButtonsEnum;
-import org.openecomp.sdc.ci.tests.datatypes.CatalogFilterTitlesEnum;
-import org.openecomp.sdc.ci.tests.datatypes.CheckBoxStatusEnum;
-import org.openecomp.sdc.ci.tests.datatypes.CreateAndImportButtonsEnum;
-import org.openecomp.sdc.ci.tests.datatypes.DataTestIdEnum;
-import org.openecomp.sdc.ci.tests.datatypes.MenuOptionsEnum;
-import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails;
-import org.openecomp.sdc.ci.tests.datatypes.TypesEnum;
-import org.openecomp.sdc.ci.tests.execute.setup.SetupCDTest;
-import org.openqa.selenium.By;
-import org.openqa.selenium.Keys;
-import org.openqa.selenium.OutputType;
-import org.openqa.selenium.Platform;
-import org.openqa.selenium.TakesScreenshot;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.firefox.FirefoxDriver;
-import org.openqa.selenium.interactions.Actions;
-import org.openqa.selenium.remote.DesiredCapabilities;
-import org.openqa.selenium.remote.RemoteWebDriver;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.Select;
-import org.openqa.selenium.support.ui.WebDriverWait;
-import org.testng.Assert;
-import org.testng.Reporter;
-
-import com.relevantcodes.extentreports.LogStatus;
-
-public final class GeneralUIUtils {
-
- private static int timeOut=60*3;
-
- public static final String FILE_NAME = "Valid_tosca_Mycompute.yml";
-
- /**************** DRIVERS ****************/
- private static WebDriver driver;
-
- public static void findComponentAndClick(String componentName) throws Exception {
- SetupCDTest.getExtendTest().log(LogStatus.INFO, "finding component " + componentName);
- waitFordataTestIdVisibility("main-menu-input-search").sendKeys(componentName);
- WebElement foundComp = null;
- try {
- foundComp = waitFordataTestIdVisibility(componentName);
- foundComp.click();
- GeneralUIUtils.waitForLoader();
- waitFordataTestIdVisibility("formlifecyclestate");
- } catch (Exception e) {
- String msg = String.format("DID NOT FIND A COMPONENT NAMED %s", componentName);
- SetupCDTest.getExtendTest().log(LogStatus.FAIL, msg);
- System.out.println(msg);
- Assert.fail(msg);
- }
- }
-
- public static List<WebElement> getElemenetsFromTable(By by) {
- return GeneralUIUtils.getDriver().findElements(by);
- }
-
- private static List<WebElement> getNewButtonsList() {
- WebElement createButtonsArea = driver.findElement(By.className("w-sdc-dashboard-card-new"));
- createButtonsArea.click();
- List<WebElement> buttonsList = driver.findElements(By.className("w-sdc-dashboard-card-new-button"));
- return buttonsList;
- }
-
- public static final String FILE_PATH = System.getProperty("user.dir") + "\\src\\main\\resources\\Files\\";
- public static String fileName = "JDM_vfc.yml";
- public static final String toscaErrorMessage = "Invalid TOSCA template.";
- public static final String yamlError = "Invalid YAML file.";
- public static final String allReadyExistErro = "Imported resource already exists in ASDC Catalog.";
-
- public static WebElement hoverOnArea(String areaId) {
- Actions actions = new Actions(driver);
- WebElement area = getWebElementWaitForVisible(areaId);
- actions.moveToElement(area).perform();
- return area;
- }
-
- public static WebElement actionBuild(WebElement element) throws InterruptedException {
- // make an action on page//hover on element
- Actions build = new Actions(driver); // here you state ActionBuider
- build.moveToElement(element).build().perform();// hover the element.
- Thread.sleep(1000);
- return element;
- }
-
- public static File takeScreenshot(String zipFile, String dir, String testName) throws IOException {
- if (zipFile == null) {
- zipFile = testName;
- }
- try {
- File scrFile = ((TakesScreenshot) GeneralUIUtils.getDriver()).getScreenshotAs(OutputType.FILE);
- File filePath = new File(String.format("%s/%s.png", dir, zipFile));
- new File(dir).mkdirs();
- FileUtils.copyFile(scrFile, filePath);
- return filePath;
- } catch (IOException e1) {
- e1.printStackTrace();
- }
- return null;
- }
-
- public static void errorMessagePopupHandle(@SuppressWarnings("rawtypes") Supplier func) throws Exception {
- try {
- WebElement errorMessagePopupHeader = getDriver().findElement(By.className("w-sdc-modal-head-text"));
- if (errorMessagePopupHeader.getText().equals("Error")) {
- WebElement okButton = getWebButton("OK");
- if (okButton.isDisplayed()) {
- okButton.click();
- func.get();
- }
- }
- } catch (Exception e) {
- throw new Exception("something went wrong, can't do anything");
- }
- }
-
- public static void waitForLoader() {
- waitForElements(By.className("tlv-loader"), 200, 3 * 60 * 1000);
- }
-
- public static void waitForLoaderOnboarding() {
- waitForElements(By.className("tlv-loader"), 200, 13 * 60 * 1000);
- }
-
- public static List<WebElement> waitForElements(By by, int napPeriod, int maxWaitMS) {
- boolean isKeepWaiting = true;
- int currentWaitTimeMS = 0;
- List<WebElement> elements = null;
- while (isKeepWaiting) {
- elements = getDriver().findElements(by);
- isKeepWaiting = elements.size() > 0;
- if (isKeepWaiting) {
- sleep(napPeriod);
- currentWaitTimeMS += napPeriod;
- if (currentWaitTimeMS > maxWaitMS) {
- isKeepWaiting = false;
- }
- }
- }
-
- return elements;
-
- }
-
- public static WebDriver getDriver() {
- return driver;
- }
-
- public static WebElement rihtPanelAPI() {
- return getWebElementWaitForVisible("tab-api");
- }
-
- public static void scrollDown() throws AWTException {
- Robot robot = new Robot();
- robot.keyPress(KeyEvent.VK_DOWN);
- robot.keyRelease(KeyEvent.VK_DOWN);
- }
-
- // solution for "element not attached to the DOM anymore"
- public static List<WebElement> getWorkspaceElements() throws InterruptedException {
- Thread.sleep(1000);
- List<WebElement> assets = GeneralUIUtils.getEelementsByClassName("w-sdc-dashboard-card-body");
- return assets;
- }
-
- public static String getMethodName(Method method) {
- return method.getName();
- }
-
- public static FileWriter InitializeprintToTxt(String testName) {
- String idForTxtFile = new SimpleDateFormat("dd.MM.yyyy_HH.mm.ss").format(new Date());
- File file = new File(testName + idForTxtFile);
- FileWriter fw = null;
- try {
- fw = new FileWriter(file, true);
-
- } catch (IOException e) {
- e.printStackTrace();
- System.out.println(e.getLocalizedMessage());
- }
- return fw;
- }
-
- public static void closeFileWriter(FileWriter file) throws IOException {
- file.flush();
- file.close();
- }
-
- public static WebElement createAndImportButtons(CreateAndImportButtonsEnum type, WebDriver driver)
- throws InterruptedException {
- switch (type) {
- case IMPORT_CP:
- case IMPORT_VFC:
- case IMPORT_VL:
- hoverOnArea("importButtonsArea");
- return GeneralUIUtils.getWebElementWaitForVisible("importVFCbutton");
-
- case IMPORT_VF:
- hoverOnArea("importButtonsArea");
- return GeneralUIUtils.getWebElement(driver, "importVFbutton");
- case CREATE_SERVICE:
- hoverOnArea("AddButtonsArea", driver);
- GeneralUIUtils.getWebElementWaitForVisible("createServiceButton").click();
- ;
- break;
-
- case CREATE_PRODUCT:
- GeneralUIUtils.getWebElement(driver, "createServiceButton").click();
- GeneralUIUtils.getWebElementWaitForVisible("createServiceButton").click();
- break;
-
- default:
- hoverOnArea("AddButtonsArea");
- driver.findElement(By.xpath("//*[@data-tests-id='createResourceButton']")).click();
- break;
- }
- return null;
-
- }
-
- public static String checkBoxLifeCyclestate(CheckBoxStatusEnum lifeCycle) {
- String Status = "IN DESIGN CHECK OUT";
- switch (lifeCycle) {
- case CHECKIN:
- Status = "IN DESIGN CHECK IN";
- if (GeneralUIUtils.getWebElementWaitForVisible(lifeCycle.getValue()).isDisplayed()) {
- GeneralUIUtils.getWebElementWaitForVisible(lifeCycle.getValue()).click();
- }
- break;
- case CHECKOUT:
- GeneralUIUtils.getWebElementWaitForVisible(lifeCycle.getValue()).click();
- Status = "IN DESIGN CHECK OUT";
- break;
- case IN_TESTING:
- GeneralUIUtils.getWebElementWaitForVisible(lifeCycle.getValue()).click();
- Status = "IN TESTING";
- break;
- case READY_FOR_TESTING:
- GeneralUIUtils.getWebElementWaitForVisible(lifeCycle.getValue()).click();
- Status = "READY FOR TESTING";
- break;
- case CERTIFIED:
- GeneralUIUtils.getWebElementWaitForVisible(lifeCycle.getValue()).click();
- Status = "CERTIFIED";
- break;
- }
- return Status;
- }
-
- public static String setFileTypeAndGetUniqId(ResourceTypeEnum fileType, ResourceReqDetails resourceDetails,
- User user) throws IOException, Exception {
- resourceDetails.setResourceType(fileType.toString());
- RestCDUtils.getResource(resourceDetails, user);
- return resourceDetails.getUniqueId();
- }
-
- public static void minimizeCatalogFilterByTitle(CatalogFilterTitlesEnum titlesEnum) {
-
- switch (titlesEnum) {
- case CATEGORIES:
- GeneralUIUtils.getWebElementWaitForVisible(titlesEnum.getValue()).click();
- break;
- case STATUS:
- GeneralUIUtils.getWebElementWaitForVisible(titlesEnum.getValue()).click();
- break;
- case TYPE:
- GeneralUIUtils.getWebElementWaitForVisible(titlesEnum.getValue()).click();
- break;
- default:
- break;
- }
- // webElementWaitForVisible.get(0).click();
- // }
- }
-
- public static WebElement getWebElementWaitForVisible(String dataTestId) {
- // try{
- return waitFordataTestIdVisibility(dataTestId);
- // }
- // catch(Exception e){
- // try{
- // WebElement errorMessagePopupHeader =
- // GeneralUIUtils.getDriver().findElement(By.className("w-sdc-modal-head-text"));
- // if (errorMessagePopupHeader.getText().equals("Error")){
- // WebElement okButton = GeneralUIUtils.getWebButton("OK");
- // if (okButton.isDisplayed()){
- //// takeScreenshot(LocalDateTime.now().toString().replaceAll(":", ""),
- // SetupCDTest.SCREENSHOT_LOG_DIR);
- // okButton.click();
- // return getWebElementWaitForVisible(dataTestId);
- // }
- // }
- // }
- // catch(Exception exception){
- // System.out.println(String.format("didn't find element with
- // data-tests-id of %s", dataTestId));
- // }
- // }
- // return null;
-
- }
-
- public static WebElement getWebElementById(String id) {
- WebDriverWait wait = new WebDriverWait(driver, 5);
- return wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@id='" + id + "']")));
- }
-
- public static WebElement getWebElementByName(String name) {
- return driver.findElement(By.name(name));
- }
-
- // New tedy , this function will get the web elements by The new attribute
- // value(data-tests-id)
- public static List<WebElement> getWebElements(String dataTestId) {
- return waitForElementsListVisibility(dataTestId);
- }
-
- // New tedy , this function will get the web element Button by The new
- // attribute value(data-tests-id)
- public static WebElement getWebButton(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait
- .until(ExpectedConditions.elementToBeClickable(By.xpath("//*[@data-tests-id='" + dataTestId + "']")));
- }
-
- // New tedy , this function will wait till the web element be
- // visible(data-tests-id)
- public static Boolean waitForInvisibileElement(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(
- ExpectedConditions.invisibilityOfElementLocated(By.xpath("//*[@data-tests-id='" + dataTestId + "']")));
- }
-
- public static WebElement waitFordataTestIdVisibility(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(
- ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@data-tests-id='" + dataTestId + "']")));
- }
-
- public static boolean clickcheckbox(String category) {
- try {
-
- } catch (Exception e) {
- return false;
- }
- return true;
- }
-
- public static WebElement waitForContainsdataTestIdVisibility2(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(driver, 5);
- return wait.until(ExpectedConditions
- .visibilityOfElementLocated(By.xpath("//*[contains (@data-tests-id, '" + dataTestId + "'])")));
- }
-
- public static List<WebElement> waitForContainsdataTestIdVisibility(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(driver, 5);
- return wait.until(ExpectedConditions
- .visibilityOfAllElementsLocatedBy(By.xpath("//*[contains (@data-tests-id, '" + dataTestId + "'])")));
- }
-
- public static WebElement waitForClassNameVisibility(String className) {
- return waitForElementVisibility(By.className(className));
- }
-
- public static WebElement waitForElementVisibility(By by) {
- return waitForElementVisibility(by, 3 * 60);
- }
-
- public static WebElement waitForElementVisibility(By by, int duration) {
- WebDriverWait wait = new WebDriverWait(driver, duration);
- return wait.until(ExpectedConditions.visibilityOf(driver.findElement(by)));
- }
-
- public static List<WebElement> waitForElementsListVisibility(By by) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions.visibilityOfAllElements(driver.findElements(by)));
- }
-
- public static boolean waitForElementsListInvisibility(By by) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions.invisibilityOfElementLocated(by));
- }
-
- // New tedy , this function will wait till the web elements be
- // visible(data-tests-id)
- public static List<WebElement> waitForElementsListVisibility(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- List<WebElement> findElements = wait.until(ExpectedConditions
- .visibilityOfAllElementsLocatedBy(By.xpath("//*[@data-tests-id='" + dataTestId + "']")));
- if (findElements.size() > 0) {
- return findElements;
- }
- System.out.println("Elements not Exist!");
- return null;
- }
-
- public static List<WebElement> waitForElementsListVisibilityTestMethod(String dataTestId) {
- return driver.findElements(By.xpath("//*[@data-tests-id='" + dataTestId + "']"));
- }
-
- public static WebElement waitForBrowseButton(String dataTestId) {
-
- return driver.findElement(By.xpath("//*[@data-tests-id='" + dataTestId + "']"));
- }
-
- public static List<WebElement> getWebElementsListByDataTestId(String dataTestId) {
- return driver.findElements(By.xpath("//*[@data-tests-id='" + dataTestId + "']"));
-
- }
-
- public static WebElement getWebElementByDataTestId(String dataTestId) {
- return driver.findElement(By.xpath("//*[@data-tests-id='" + dataTestId + "']"));
- }
-
- public static WebElement waitUntilClickableButton(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions
- .elementToBeClickable(driver.findElement(By.xpath("//*[@data-tests-id='" + dataTestId + "']"))));
- }
-
- // interface Throws {
- // <T,R, E extends Exception> R apply(T t) throws E;
- // }
- // public static <R> R swallowException(Throws<T,R,E> supplier){
- // R returnValue;
- // try{
- // returnValue = supplier.get();
- // }
- // catch(Exception e){
- // returnValue = null;
- // }
- // return returnValue;
- // }
- // Use this method only for special cases, otherwise use
- // org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils.getWebElementWaitForVisible(WebDriver,
- // String)
-
- public static boolean isElementPresent(String dataTestId) {
- try {
- driver.findElement(By.xpath("//*[@data-tests-id='" + dataTestId + "']"));
- return true;
- } catch (org.openqa.selenium.NoSuchElementException e) {
- return false;
- }
- }
-
- public static <R> R retryMethodOnException(Supplier<R> supplier) {
- boolean stopSearch = false;
- R ret = null;
- Exception throwMe = null;
- int timeElapsed = 0;
- while (!stopSearch) {
- try {
- ret = supplier.get();
- } catch (Exception e) {
- throwMe = e;
- GeneralUIUtils.sleep(250);
- timeElapsed += 250;
- if (timeElapsed > 5000) {
- stopSearch = true;
- }
-
- } finally {
- if (ret != null) {
- stopSearch = true;
- }
- }
- }
- if (ret == null) {
- throw new RuntimeException(throwMe);
- } else {
- return ret;
- }
-
- }
-
- // this method will login as tester and start test or accept Assets.
- public static void testerUser(Boolean startTest, Boolean accept, ResourceReqDetails resource) throws Exception {
- // GeneralUIUtils.getWebElement(ResourceUIUtils.getName()).click();
- String url = "http://localhost:8181/sdc1/proxy-tester1#/dashboard";
- sleep(2000);
- SetupCDTest.navigateToUrl(url);
- GeneralUIUtils.getWebElementWaitForVisible(resource.getName()).click();
-
- if (startTest) {
- clickStartTesting();
- }
-
- if (accept) {
- clickAccept();
- }
- }
-
- public static void governorUser(Boolean reject, Boolean approve, ResourceReqDetails resource) throws Exception {
- // GeneralUIUtils.getWebElement(ResourceUIUtils.getName()).click();
- String url = "http://localhost:8181/sdc1/proxy-governor1#/dashboard";
- sleep(2000);
- SetupCDTest.navigateToUrl(url);
- GeneralUIUtils.getWebElementWaitForVisible("w-sdc-dashboard-card-info");
- GeneralUIUtils.getWebElementWaitForVisible(resource.getName()).click();
- if (reject) {
- clickReject();
- }
- if (approve) {
- clickApprove();
- }
- sleep(1000);
- }
-
- public static void opsUser(Boolean disribute, Boolean reDisribute, ResourceReqDetails resource) throws Exception {
- // GeneralUIUtils.getWebElement(ResourceUIUtils.getName()).click();
- String url = "http://localhost:8181/sdc1/proxy-ops1#/dashboard";
- sleep(2000);
- SetupCDTest.navigateToUrl(url);
- sleep(2000);
- GeneralUIUtils.getWebElementWaitForVisible("w-sdc-dashboard-card-info");
- GeneralUIUtils.getWebElementWaitForVisible(resource.getName()).click();
- if (reDisribute) {
- clickReDistribute();
- }
- if (disribute) {
- clickDistribute();
- }
- sleep(1000);
- }
-
- // this function located select list by the data-test-id value and the item
- // to be selected..
- public static Select getSelectList(String item, String datatestsid) {
- Select selectlist = new Select(waitFordataTestIdVisibility(datatestsid));
- if (item != null) {
- selectlist.selectByVisibleText(item);
- }
- return selectlist;
- }
-
- // Define description area .
- public static String defineDescription(String descriptionText) {
-
- WebElement resourceDescriptionTextbox = GeneralUIUtils.getWebElementWaitForVisible("description");
- resourceDescriptionTextbox.clear();
- resourceDescriptionTextbox.sendKeys(descriptionText);
- return descriptionText;
- }
-
- public static WebElement catalogSearchBox(String searchText) {
- WebElement searchBox = GeneralUIUtils.getWebElementWaitForVisible("main-menu-input-search");
- searchBox.clear();
- searchBox.sendKeys(searchText);
- return searchBox;
- }
-
- // enum
- public static void selectMenuOptionbyname(List<WebElement> options, MenuOptionsEnum optionName)
- throws InterruptedException {
-
- for (WebElement webElement : options) {
- if (webElement.getText().equals(optionName.getValue())) {
- actionBuild(webElement).click();
- } else {
- System.out.println("No such element!");
- }
- }
-
- }
-
- // back to workspace by Clicking the ASDC Logo.!
- public static void clickASDCLogo() {
- WebDriverWait wait = new WebDriverWait(driver, 15);
- wait.until(ExpectedConditions.visibilityOfElementLocated(By.linkText("ASDC")));
- WebElement ClickASDCLogo = driver.findElement(By.linkText("ASDC"));
- ClickASDCLogo.click();
- GeneralUIUtils.waitForLoader();
- }
-
- public static void clickExitSign() throws InterruptedException {
- WebElement exitSign = driver.findElement(By.xpath("//*[contains(@class, 'x-btn')]"));
- actionBuild(exitSign);
- Thread.sleep(1000);
- driver.findElement(By.xpath("//*[contains(@class, 'x-btn')]")).click();
- }
-
- public static void clickCreateButton() throws Exception {
- getWebButton("create/save").click();
- GeneralUIUtils.waitForLoader();
- getWebElementWaitForVisible(DataTestIdEnum.LifeCyleChangeButtons.CHECK_IN.getValue());
- }
-
- public static void clickUpdateButton() throws Exception {
- GeneralUIUtils.sleep(500);
- clickCreateButton();
- }
-
- public static void checkOut() throws InterruptedException, AWTException {
- actionBuild(getWebButton("check_out"));
- getWebButton("check_out").click();
- waitForInvisibileElement("check_out");
- }
-
- public static void clickStartTesting() throws InterruptedException {
- actionBuild(getWebButton("start_testing"));
- getWebButton("start_testing").click();
- waitForInvisibileElement("start_testing");
- getWebButton("create/save").click();
- }
-
- public static void clickAccept() throws InterruptedException {
- actionBuild(getWebButton("accept"));
- getWebButton("accept").click();
- getWebElementWaitForVisible("checkindialog").sendKeys("Accept!");
- clickOkButton();
- sleep(1000);
- }
-
- public static void clickReject() throws InterruptedException {
- actionBuild(getWebButton("reject"));
- getWebButton("reject").click();
- waitForInvisibileElement("reject");
- }
-
- public static void clickApprove() throws InterruptedException {
- actionBuild(getWebButton("approve"));
- getWebButton("approve").click();
- waitForInvisibileElement("approve");
- }
-
- public static void clickDistribute() throws InterruptedException {
- actionBuild(getWebButton("distribute"));
- getWebButton("distribute").click();
- waitForInvisibileElement("redistribute");
- }
-
- public static void clickReDistribute() throws InterruptedException {
- actionBuild(getWebButton("redistribute"));
- getWebButton("redistribute").click();
- }
-
- public static void clickCancel() {
- getWebButton("cancel").click();
- waitForInvisibileElement("cancel");
- }
-
- public static void checkIn() throws InterruptedException {
- actionBuild(getWebButton("check_in"));
- getWebButton("check_in").click();
- getWebElementWaitForVisible("checkindialog").sendKeys("Check in!");
- clickOkButton();
- waitForInvisibileElement("checkindialog");
- }
-
- public static void clickSaveIcon() throws InterruptedException {
- actionBuild(GeneralUIUtils.waitFordataTestIdVisibility("create/save"));
- GeneralUIUtils.getWebButton(/* "delete_version" */"create/save").click();
- Thread.sleep(1000);
-
- }
-
- // Open menu of Created Object and select option.
- public static void openObjectMenuAndSelectOption(String uniqid, MenuOptionsEnum optionName)
- throws InterruptedException, AWTException {
- WebElement hoverOnMenu = actionBuild(getWebElementWaitForVisible(uniqid));
- List<WebElement> menuOptions = hoverOnMenu.findElement(By.xpath("./following-sibling::*[1]"))
- .findElements(By.xpath(".//*"));
- selectMenuOptionbyname(menuOptions, optionName);
- }
-
- // Get elements by className.
- public static WebElement getEelementByClassName(String element) {
- try {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@class='" + element + "']")));
- } catch (Exception e) {
- return null;
- }
- }
-
- public static List<WebElement> getEelementsByClassName(String element) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait
- .until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//*[@class='" + element + "']")));
- }
-
- public static WebElement getEelementByContainsdatatestsid(String datatestId) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions
- .visibilityOfElementLocated(By.xpath("//*[contains(@data-tests-id, '" + datatestId + "')]")));
- }
-
- // list
- public static List<WebElement> getEelementsByContainsDataTestsId(String datatestId) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions
- .visibilityOfAllElementsLocatedBy(By.xpath("//*[contains(@data-tests-id, '" + datatestId + "')]")));
- }
-
- public static WebElement getEelementBycontainsClassName(String classname) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(
- ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[contains(@class, '" + classname + "')]")));
- }
-
- public static WebElement getEelementByLinkText(String linkText) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@text='" + linkText + "']")));
- }
-
- public static List<WebElement> getEelementsBycontainsClassName(String classname) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions
- .visibilityOfAllElementsLocatedBy(By.xpath("//*[contains(@class, '" + classname + "')]")));
- }
-
- public static WebElement getButtonByClassName(String element) {
- WebDriverWait wait = new WebDriverWait(driver, 3 * 60);
- return wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//button[@class='" + element + "']")));
- }
-
- public static void checkinCheckout(String elementName) throws Exception, Exception {
- checkIn();
- getWebElementWaitForVisible(elementName).click();
- ;
- checkOut();
-
- }
-
- public static void moveToStep(DataTestIdEnum.StepsEnum Stepname) {
- moveToStep(Stepname.getValue());
- }
-
- public static void moveToStep(String dataTestId) {
- getWebButton(dataTestId).click();
- waitForLoader();
- }
-
- public static void editFile(String name) {
- WebElement editfilebutton = driver.findElement(By.id("edit" + name + ""));
- editfilebutton.click();
- }
-
- public static void deleteFile(String name) {
- WebElement deletebutton = driver.findElement(By.id("delete" + name + ""));
- deletebutton.click();
- }
-
- public static void downloadFile(String name) {
- WebElement downloadbutton = driver.findElement(By.id("download" + name + ""));
- downloadbutton.click();
- }
-
- public static void sleep(int duration) {
- try {
- Thread.sleep(duration);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
- }
-
- public static void hasDriver() {
- try {
- driver.getCurrentUrl();
- driver.quit();
- } catch (NullPointerException e) {
- }
- }
-
- public static void initDriver() {
- try {
- boolean remoteTesting = SetupCDTest.config.isRemoteTesting();
- if (!remoteTesting) {
- System.out.println("opening LOCAL browser");
- driver = new FirefoxDriver();
-
- } else {
- System.out.println("opening REMOTE browser");
- String remoteEnvIP = SetupCDTest.config.getRemoteTestingMachineIP();
- String remoteEnvPort = SetupCDTest.config.getRemoteTestingMachinePort();
- DesiredCapabilities cap = new DesiredCapabilities();
- cap = DesiredCapabilities.firefox();
- cap.setPlatform(Platform.WINDOWS);
- cap.setBrowserName("firefox");
-
- String remoteNodeUrl = String.format(SetupCDTest.SELENIUM_NODE_URL, remoteEnvIP, remoteEnvPort);
- driver = new RemoteWebDriver(new URL(remoteNodeUrl), cap);
- }
-
-
- } catch (MalformedURLException e) {
- throw new RuntimeException(e);
- }
-
- }
-
- public static void windowZoomOut() {
- final int zoomOutFactor = 2;
- for (int i = 0; i < zoomOutFactor; i++) {
- driver.findElement(By.tagName("html")).sendKeys(Keys.chord(Keys.CONTROL, Keys.SUBTRACT));
- }
- }
-
- public static void defineTagsList(ResourceReqDetails resource, String[] resourceTags) {
- List<String> taglist = new ArrayList<String>();
- ;
- WebElement resourceTagsTextbox = getWebElementWaitForVisible("i-sdc-tag-input");
- for (String tag : resourceTags) {
- resourceTagsTextbox.clear();
- resourceTagsTextbox.sendKeys(tag);
- resourceTagsTextbox.sendKeys(Keys.ENTER);
- taglist.add(tag);
- // waitForElements(By.className("sdc-loader"), 250, 15000);
- }
- }
-
- // public static List<WebElement> waitForElements(By by, int napPeriod, int
- // maxWaitMS){
- // List<WebElement> elements = null;
- //
- // elements = getDriver().findElements(by);
- // if( currentWaitTimeMS > maxWaitMS){
- // }
- // resource.setTags(taglist);
- // return elements;
- // }
- public static void selectTabInRightPallete(String className) throws Exception {
- WebElement tab = getEelementBycontainsClassName(className);
- tab.click();
- }
-
- public static WebElement getWebElement(WebDriver driver, String dataTestId) {
- return waitForElementVisibility(dataTestId);
- }
-
- public static void clickOkButton() throws InterruptedException {
- // actionBuild(getWebButton("OK"));
- // sleep(2000);
- getWebButton("OK").click();
- }
-
- public static WebElement waitForElementVisibility(String dataTestId) {
- WebDriverWait wait = new WebDriverWait(GeneralUIUtils.getDriver(), 30);
- return wait.until(
- ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@data-tests-id='" + dataTestId + "']")));
- }
-
- public static WebElement deleteVersion() {
- return GeneralUIUtils.waitFordataTestIdVisibility("delete_version");
- }
-
- // public static List<WebElement> getFilterTitles() throws Exception {
- //
- // return
- // GeneralUIUtils.getEelementsByClassName("i-sdc-designer-leftbar-section-title-text");
- //
- // }
-
- public static void deleteVersionInUI() throws Exception {
-
- actionBuild(deleteVersion());
- deleteVersion().click();
- GeneralUIUtils.clickOkButton();
- }
-
- public static void uploadFileWithJavaRobot(String FilePath, String FileName) throws Exception {
- StringSelection sel = new StringSelection(FilePath + FileName);
- Toolkit.getDefaultToolkit().getSystemClipboard().setContents(sel, null);
- Thread.sleep(1000);
- Robot robot = new Robot();
- robot.delay(1000);
-
- // Release Enter
- robot.keyRelease(KeyEvent.VK_ENTER);
-
- // Press CTRL+V
- robot.keyPress(KeyEvent.VK_CONTROL);
- robot.keyPress(KeyEvent.VK_V);
-
- // Release CTRL+V
- robot.keyRelease(KeyEvent.VK_CONTROL);
- robot.keyRelease(KeyEvent.VK_V);
- Thread.sleep(1000);
-
- // Press Enter
- robot.keyPress(KeyEvent.VK_ENTER);
- robot.keyRelease(KeyEvent.VK_ENTER);
- Thread.sleep(3000);
- }
-
- public static String catalogFilterTypeChecBox(TypesEnum enumtype) throws Exception {
- String Type = enumtype.toString().toLowerCase();
- getWebElementWaitForVisible(enumtype.getValue()).click();
- return Type;
- }
-
- public static List<String> catalogFilterStatusChecBox(CheckBoxStatusEnum statusEnum) throws Exception {
- List<String> status = null;
- switch (statusEnum) {
- case IN_DESIGN:
- status = Arrays.asList("NOT_CERTIFIED_CHECKIN", "NOT_CERTIFIED_CHECKOUT");
- getWebElementWaitForVisible(statusEnum.getCatalogValue()).click();
- break;
- case READY_FOR_TESTING:
- status = Arrays.asList("READY_FOR_CERTIFICATION");
- getWebElementWaitForVisible(statusEnum.getCatalogValue()).click();
- break;
- case IN_TESTING:
- status = Arrays.asList("CERTIFICATION_IN_PROGRESS");
- getWebElementWaitForVisible(statusEnum.getCatalogValue()).click();
- break;
- case CERTIFIED:
- status = Arrays.asList("CERTIFIED");
- getWebElementWaitForVisible(statusEnum.getCatalogValue()).click();
- break;
- case DISTRIBUTED:
- status = Arrays.asList("CERTIFIED");
- getWebElementWaitForVisible(statusEnum.getCatalogValue()).click();
- break;
- }
- return status;
- }
-
- public static void clickBreadCrumbs(BreadCrumbsButtonsEnum button) {
- switch (button) {
- case CATALOG:
- GeneralUIUtils.getWebButton(button.getButton()).click();
- break;
- case HOME:
- GeneralUIUtils.getWebButton(button.getButton()).click();
- break;
- case ON_BOARDING:
- GeneralUIUtils.getWebButton(button.getButton()).click();
- break;
- default:
- break;
- }
- }
-
- public static void clickPrintScreen() {
- getEelementByClassName("e-sdc-small-print-screen").click();
- }
-
- public static void clickSubmitForTest() throws InterruptedException {
- getWebButton("submit_for_testing").click();
- WebElement commentText = getDriver().findElement(By.className("w-sdc-modal-body-email"));
- commentText.sendKeys("Submit For Test");
- sleep(3000);
- clickOkButton();
- }
-
- public static WebElement hoverOnArea(String areaId, WebDriver driver) {
- Actions actions = new Actions(driver);
- WebElement area = getWebElement(driver, areaId);
- actions.moveToElement(area).perform();
- return area;
- }
-
- public static WebElement moveToNextStep(DataTestIdEnum.StepsEnum Stepname) {
- return getWebButton(Stepname.getValue());
- }
-
- public static String getComponentVersion(String componentName) {
- return GeneralUIUtils.getWebElementWaitForVisible(componentName + "Version").getText();
- }
-
- public static void clickOnHTMLElementByDataTestId(String dataTestId) throws Exception {
- WebDriverWait wait = new WebDriverWait(GeneralUIUtils.getDriver(), 20);
- StopWatch performanceMesuring = new StopWatch();
- performanceMesuring.start();
- WebElement element = wait
- .until(ExpectedConditions.elementToBeClickable(By.xpath("//*[@data-tests-id='" + dataTestId + "']")));
- performanceMesuring.stop();
- element.click();
- performanceMesuring(dataTestId, performanceMesuring);
-
- }
-
- private static void performanceMesuring(String dataTestId, StopWatch performanceMesuring) {
- Reporter.log("click on: " + dataTestId);
- System.out.println("click on: " + dataTestId);
- Reporter.log("Total Load Time Until click on button : " + dataTestId + " "
- + (((double) performanceMesuring.getTime()) / 1000) + " seconds");
- System.out.println("Total Load Time Until click on button : " + dataTestId + " "
- + (((double) performanceMesuring.getTime()) / 1000) + " seconds");
- performanceMesuring.reset();
- performanceMesuring.start();
- Boolean waitForElementInVisibilityByClassName = GeneralUIUtils.waitForElementInVisibilityByClassName(driver,
- "tlv-loader");
- performanceMesuring.stop();
- Reporter.log("Total time before loader disappear: " + (((double) performanceMesuring.getTime()) / 1000)
- + " seconds");
- System.out.println("Total time before loader disappear: " + (((double) performanceMesuring.getTime()) / 1000)
- + " seconds");
- }
-
- public static Boolean waitForElementInVisibilityByClassName(WebDriver driver, String className) {
- WebDriverWait wait = new WebDriverWait(driver, 30);
- return wait.until(ExpectedConditions.invisibilityOfElementLocated(By.className(className)));
- }
-
- public static void findComponentAndClick(ResourceReqDetails resource) throws Exception {
-
- WebElement searchTextbox = GeneralUIUtils.getWebElementWaitForVisible("main-menu-input-search");
- searchTextbox.clear();
- searchTextbox.sendKeys(resource.getName());
- clickOnHTMLElementByDataTestId(resource.getName());
- }
-
- public static void clickOnHTMLElementBylinkText(String linkText) throws Exception {
- WebDriverWait wait = new WebDriverWait(GeneralUIUtils.getDriver(), 20);
- StopWatch performanceMesuring = new StopWatch();
- performanceMesuring.start();
- WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.linkText(linkText)));
- performanceMesuring.stop();
- element.click();
- performanceMesuring(linkText, performanceMesuring);
- }
-
- public static void ultimateWait(){
- long startTime = System.nanoTime();
-
- GeneralUIUtils.waitForLoader();
- GeneralUIUtils.waitForAngular();
-
- long estimateTime = System.nanoTime();
- long duration = TimeUnit.NANOSECONDS.toSeconds(estimateTime - startTime);
- if(duration > timeOut){
- SetupCDTest.getExtendTest().log(LogStatus.WARNING, String.format("Delays on page, %d seconds", duration));
- }
- }
-
- public static void waitForAngular(){
- WebDriverWait wait = new WebDriverWait(getDriver(), 90, 100);
- wait.until(AdditionalConditions.pageLoadWait());
- wait.until(AdditionalConditions.angularHasFinishedProcessing());
- }
-
-}