Advertisement
Guest User

Untitled

a guest
Mar 23rd, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.21 KB | None | 0 0
  1. package pageobject;
  2.  
  3. import org.openqa.selenium.WebDriver;
  4. import org.openqa.selenium.WebElement;
  5. import org.openqa.selenium.support.FindBy;
  6. import org.openqa.selenium.support.FindBys;
  7. import org.openqa.selenium.support.ui.ExpectedConditions;
  8.  
  9. import java.util.List;
  10.  
  11. public class Main extends Page {
  12.  
  13.     public Main(WebDriver webDriver) {
  14.         super(webDriver);
  15.         this.url = property.getProperty("main.url");
  16.     }
  17.  
  18.     @FindBy(css = "a.navbar-brand.nav-button")
  19.     private WebElement newOrderButton;
  20.  
  21.     @FindBys(@FindBy(css = ".list-group-item.col-md-12.ng-scope"))
  22.     private List<WebElement> ordersList;
  23.  
  24.     @FindBy(xpath="descendant::input[@placeholder]")
  25.     private WebElement searchInput;
  26.  
  27.     private WebElement go;
  28.  
  29.     private WebElement currentOrder;
  30.  
  31.     @Override
  32.     public Main open() {
  33.         return (Main)super.open();
  34.     }
  35.  
  36.     public Products newOrderButtonClick(){
  37.         waitVisibility(newOrderButton).click();
  38.         return new Products(webDriver);
  39.     }
  40.  
  41.     public Main inputSearch(String number){
  42.         input(searchInput,number);
  43.         return this;
  44.     }
  45.  
  46.     public Main clickGo(){
  47.         waitVisibility(go).click();
  48.         waitStaleness(ordersList.get(0));
  49.         return this;
  50.     }
  51.  
  52.     public Main findOrder(String data){
  53.         wait.until(ExpectedConditions.visibilityOfAllElements(ordersList));
  54.         currentOrder = ordersList.stream().filter(webElement -> webElement.findElement
  55.                  (byXpathWithProperty("main.xpath_date")).getText().contains(data))
  56.                 .findFirst().get();
  57.         return this;
  58.     }
  59.  
  60.     public String getStatus(){
  61.        return getInfoFromOrder("main.xpath_status");
  62.     }
  63.  
  64.     public String getAffiliate(){
  65.        return getInfoFromOrder("main.xpath_affilate");
  66.     }
  67.  
  68.     public String getAddress(){
  69.         return getInfoFromOrder("main.xpath_address");
  70.     }
  71.  
  72.     public String getClient(){
  73.         return getInfoFromOrder("main.xpath_client");
  74.     }
  75.  
  76.     public String getSumm(){
  77.         return getInfoFromOrder("main.xpath_summ");
  78.     }
  79.  
  80.     private String getInfoFromOrder(String key){
  81.         return currentOrder.findElement(byXpathWithProperty(key)).getText();
  82.     }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement