List of usage examples for org.openqa.selenium By className
public static By className(String className)
From source file:com.daarons.transfer.UploadTask.java
License:Apache License
@Override protected Object call() throws Exception { initUploadTask();/*from www . j a v a2 s. c o m*/ acceptToS(); //put before login? String emailAddress = getTransferSettingsController().getEmailAddress(); String password = getTransferSettingsController().getPassword(); boolean loggedIn = false; if (!emailAddress.isEmpty() && !password.isEmpty()) { loggedIn = logIn(emailAddress, password); } Iterator<UploadTransferObject> i = uploadList.iterator(); while (i.hasNext()) { UploadTransferObject uploadTransferObject = i.next(); clickButtonToChooseEmailOrLink(); Message message = uploadTransferObject.getMessage(); boolean sendingEmail = false; boolean gettingLink = false; if (message != null) { clickEmailButton(); inputMessage(message); sendingEmail = true; } else { clickLinkButton(); gettingLink = true; } String uploadPassword = uploadTransferObject.getPassword(); if (uploadPassword != null && loggedIn) { enterUploadPassword(uploadPassword); } clickButtonToChooseEmailOrLink(); inputFilePath(uploadTransferObject.getUrl()); clickTransferButtonWithText("Transfer"); String downloadLink = null; int timeWaited = 0; boolean isUploadTimeAvailable = isUploadTimeAvailable(longWait); boolean isLinkAvailable = false; boolean isEmailSent = false; if (!isUploadTimeAvailable) { //check if the upload if finished. Maybe it was a small file and uploaded quickly. if (sendingEmail) { isEmailSent = isTransferButtonWithTextAvailable("Send another?", longWait); } else if (gettingLink) { isLinkAvailable = isLinkAvailable(smallWait); } //if upload isn't finished if (!isEmailSent && !isLinkAvailable) { //look for upload time again isUploadTimeAvailable = isUploadTimeAvailable(longWait); if (!isUploadTimeAvailable) { log.error("Couldn't upload this file. Continuing to next file."); TransferRecord transferRecord = createTransferRecord(uploadTransferObject, "Failed"); dao.addTransferRecord(transferRecord); continue; } } } if (isUploadTimeAvailable) { int timeUntilUploadFinished = getUploadTime(smallWait); //create new webdriverwait based on upload time + some extra time //just in case slow connection WebDriverWait uploadWait = new WebDriverWait(driver, (timeUntilUploadFinished * 60) + (30 * 60)); if (sendingEmail) { isEmailSent = isTransferButtonWithTextAvailable("Send another?", uploadWait); } else if (gettingLink) { isLinkAvailable = isLinkAvailable(uploadWait); } if (!isEmailSent && !isLinkAvailable) { log.error("The upload time is done, but the web element cannot be found"); if (isUploadTimeAvailable(smallWait)) { timeWaited += (timeUntilUploadFinished * 60) + (30 * 60); timeUntilUploadFinished = getUploadTime(smallWait); uploadWait = new WebDriverWait(driver, (timeUntilUploadFinished * 60) + (30 * 60)); //calculate time waited if there's a future failure timeWaited += (timeUntilUploadFinished * 60) + (30 * 60); timeWaited /= 60;//time waited in minutes for failure if (sendingEmail) { isEmailSent = isTransferButtonWithTextAvailable("Send another?", uploadWait); } else if (gettingLink) { isLinkAvailable = isLinkAvailable(uploadWait); } if (!isEmailSent && !isLinkAvailable) { log.error("Couldn't upload this file. Continuing to next file."); TransferRecord transferRecord = createTransferRecord(uploadTransferObject, "Failed"); dao.addTransferRecord(transferRecord); continue; } } else if (sendingEmail && !isTransferButtonWithTextAvailable("Send another?", smallWait)) { log.error("Couldn't upload this file. Continuing to next file."); TransferRecord transferRecord = createTransferRecord(uploadTransferObject, "Failed"); dao.addTransferRecord(transferRecord); continue; } else if (gettingLink && !isLinkAvailable(smallWait)) { log.error("Couldn't upload this file. Continuing to next file."); TransferRecord transferRecord = createTransferRecord(uploadTransferObject, "Failed"); dao.addTransferRecord(transferRecord); continue; } } } WebElement linkElement = null; if (gettingLink) { linkElement = smallWait .until(ExpectedConditions.presenceOfElementLocated(By.className("transfer__textfield"))); downloadLink = linkElement.getAttribute("value"); } if (sendingEmail) { downloadLink = message.getTo().replaceAll(",", " "); } TransferRecord transferRecord = createTransferRecord(uploadTransferObject, downloadLink); dao.addTransferRecord(transferRecord); try { if (gettingLink) { linkElement.click(); clickTransferButtonWithText("Ok"); } else if (isEmailSent) { clickTransferButtonWithText("Send another?"); } clickTransferButtonWithText("Continue"); Thread.sleep(5000); } catch (Exception ex) { log.error("Couldn't click button. Uploading next file.", ex); } } if (loggedIn) { logOut(); try { Thread.sleep(3000); } catch (InterruptedException ex) { log.error(ex); } } clearTableView("upload"); driver.quit(); return null; }
From source file:com.daarons.transfer.UploadTask.java
License:Apache License
private void clickTransferButtonWithText(String text) throws Exception { if (isTransferButtonWithTextAvailable(text, longWait)) { WebElement transferButton = smallWait .until(ExpectedConditions.presenceOfElementLocated(By.className("transfer__button"))); transferButton.click();/*w ww .j a v a2 s. c om*/ } else { throw new Exception("Button with text " + text + " does not exist"); } }
From source file:com.daarons.transfer.UploadTask.java
License:Apache License
private boolean isTransferButtonWithTextAvailable(String text, WebDriverWait wait) { return wait//from w ww .j a v a 2 s.co m .until(ExpectedConditions.textToBePresentInElementLocated(By.className("transfer__button"), text)); }
From source file:com.daarons.transfer.UploadTask.java
License:Apache License
private boolean isOkButtonClickable(WebDriverWait wait) { //checks to see if the Ok Button is ready to be clicked meaning upload is finished boolean isOkButtonClickable; try {// ww w. j a v a 2 s . c o m isOkButtonClickable = wait.until((ExpectedCondition<Boolean>) (WebDriver driver2) -> !driver2 .findElement(By.className("transfer__button")).getText().equals("Transfer") && !driver2.findElement(By.className("transfer__button")).getText().equals("Cancel")); } catch (Exception ex) { log.error(ex); isOkButtonClickable = false; } return isOkButtonClickable; }
From source file:com.daarons.transfer.UploadTask.java
License:Apache License
private void logOut() { WebElement accountLink = longWait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector( "body > div > div > nav > ul > li.nav__item.nav_item--expanded.nav__item--active > ul > li:nth-child(4) > a"))); accountLink.click();/*from w w w. ja v a 2s . co m*/ WebElement signOutButton = longWait .until(ExpectedConditions.presenceOfElementLocated(By.className("account__signout"))); signOutButton.click(); }
From source file:com.denimgroup.threadfix.selenium.pages.ApplicationDetailPage.java
License:Mozilla Public License
public boolean isDuplicateScan() { sleep(1000);/*from w w w. ja va 2s. c om*/ String s = ""; for (int i = 0; i < 10; i++) { try { s = driver.findElementByClassName("in").findElements(By.className("alert-error")).get(1).getText(); } catch (IndexOutOfBoundsException e) { sleep(500); continue; } break; } return s.contains("Scan file has already been uploaded."); }
From source file:com.denimgroup.threadfix.selenium.pages.RemoteProvidersIndexPage.java
License:Mozilla Public License
public RemoteProvidersIndexPage closeModal() { driver.findElementByClassName("modal-footer").findElement(By.className("btn")).click(); waitForInvisibleElement(driver.findElementByClassName("modal")); return new RemoteProvidersIndexPage(driver); }
From source file:com.denimgroup.threadfix.selenium.pages.TeamIndexPage.java
License:Mozilla Public License
public int getNumAppRows(String teamName) { if (!(driver.findElementById("teamAppTableDiv" + (getIndex(teamName) + 1)).getText() .contains("No applications found."))) { return driver.findElementById("teamAppTable" + (getIndex(teamName) + 1)) .findElements(By.className("app-row")).size(); }// w w w . j av a 2 s. com return 0; }
From source file:com.denimgroup.threadfix.selenium.pages.TeamIndexPage.java
License:Mozilla Public License
public BasePage closeModal() { driver.findElementByClassName("modal-footer").findElement(By.className("btn")).click(); return setPage(); }
From source file:com.denimgroup.threadfix.selenium.pages.UserIndexPage.java
License:Mozilla Public License
public UserIndexPage clickCancel(String name) { driver.findElementsByClassName("modal-footer").get(getIndex(name)).findElement(By.className("btn")).click(); sleep(1000);//from w w w . ja v a 2 s. c o m return new UserIndexPage(driver); }