tis-2017/src/test/java/page/MainPage.java
2018-04-28 12:00:44 +03:00

128 lines
3.2 KiB
Java

package page;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.support.FindBy;
import java.util.List;
public class MainPage {
WebDriver driver;
@FindBy(css = ".header-nav-item-link")
private List<WebElement> mainMenu;
@FindBy(xpath = "/html/body/div[1]/div/div[2]/div/div[1]/div[7]/nav/ul/li[8]/div/div/ul[2]/li[1]/ul/li[1]/a")
private WebElement subMenu;
@FindBy(css = ".footer-nav-link")
private List<WebElement> footerMenu;
@FindBy(css = ".header-logo")
private WebElement mVideoLogo;
@FindBy(css = ".shop-service-list .view-all-base")
private List<WebElement> readMore;
@FindBy(css = ".socials-link")
private List<WebElement> socialLink;
@FindBy(css = ".promo-banner-slider-info .btn")
private WebElement reviews;
@FindBy(css = ".header-search-input")
private WebElement inputField;
@FindBy(css = ".header-login-option-link")
private List<WebElement> authReg;
@FindBy(xpath = ".//*[@id=\"js-form-submit-id\"]")
private WebElement basketIcon;
@FindBy(id = "frm-subscr-email-address")
private WebElement inputEMail;
@FindBy(id = "submitSubscribe")
private WebElement sbmtSubBtn;
public MainPage(WebDriver driver) {
this.driver = driver;
}
public boolean isLogoPresent() { return driver.findElement(By.cssSelector(".header-logo")).isDisplayed(); }
public boolean isAccountPresent() {
return driver.findElement(By.cssSelector(".my-account-personal-photo-placeholder")).isDisplayed();
}
public boolean isSubSuccess() { return driver.findElement(By.cssSelector(".text-success")).isDisplayed(); }
public void clickMainMenu() {
mainMenu.get(1).sendKeys(Keys.RETURN);
}
public void clickSubMenu() {
Actions builder = new Actions(driver);
builder.moveToElement(mainMenu.get(7)).perform();
subMenu.sendKeys(Keys.RETURN);
}
public void clickFooterMenu() {
footerMenu.get(1).sendKeys(Keys.RETURN);
}
public void clickLogo() {
mVideoLogo.sendKeys(Keys.RETURN);
}
public void clickReadMore() {
readMore.get(1).sendKeys(Keys.RETURN);
}
public void clickSocialLink() {
String base = driver.getWindowHandle();
socialLink.get(0).sendKeys(Keys.RETURN);
driver.switchTo().window(base);
}
public void clickReviews() {
reviews.sendKeys(Keys.RETURN);
}
public MainPage setSearchString(String text) {
inputField.sendKeys(text);
return this;
}
public void clickSubmitButton() {
inputField.sendKeys(Keys.RETURN);
}
public void clickAuth() {
authReg.get(0).sendKeys(Keys.RETURN);
}
public void clickReg() {
authReg.get(1).sendKeys(Keys.RETURN);
}
public void clickBasketIcon() {
basketIcon.sendKeys(Keys.RETURN);
}
public MainPage setEmail(String eMailText) {
inputEMail.sendKeys(eMailText);
return this;
}
public void clickSubmitSub() {
sbmtSubBtn.sendKeys(Keys.RETURN);
}
}