tis-2017/Vasileva/src/test/java/page/QuestionsAndAnswersPage.java
2018-05-03 12:48:00 +04:00

78 lines
2.4 KiB
Java

package page;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import java.util.List;
import java.lang.reflect.Method;
public class QuestionsAndAnswersPage {
private WebDriver driver;
@FindBy(xpath = "//*[@id=\"MainContent\"]/div[1]/div/span[3]/a")
private WebElement filterByRatingButton;
@FindBy(css = ".rating-num-plus")
private List<WebElement> ratingPlusList;
@FindBy(css = ".rating-num-minus")
private List<WebElement> ratingMinusList;
@FindBy(xpath = "//*[@id=\"NewQuestion\"]")
private WebElement inputTextField;
@FindBy(xpath = "//*[@id=\"AddQuestionButton\"]")
private WebElement submitButton;
@FindBy(css = ".panel-text")
private List<WebElement> questionsList;
public QuestionsAndAnswersPage(WebDriver driver) {
this.driver = driver;
}
public void filterByRatingClick(){
filterByRatingButton.click();
}
public boolean checkRatingOrder() {
try {
Thread.sleep(2000);
} catch (Exception e) {
e.printStackTrace();
}
boolean checkRatingOrder = true;
int pastRating = Integer.parseInt(ratingPlusList.get(0).getText())+Integer.parseInt(ratingMinusList.get(0).getText());
for (int i=1; i<ratingPlusList.size(); i++){
int currentRating = Integer.parseInt(ratingPlusList.get(i).getText())+Integer.parseInt(ratingMinusList.get(i).getText());
if(pastRating >= currentRating){checkRatingOrder = true; pastRating=currentRating; }
else {checkRatingOrder = false; break;}
}
return checkRatingOrder;
}
public boolean isQuestionPresent(String str){
boolean check = false;
for (int i=0; i<questionsList.size(); i++) {
if (questionsList.get(i).getText().equals(str)) {
check = true;
break;
}
}
return check;
}
public void setText(String str) {
inputTextField.sendKeys(str);
}
public void submitButtonClick(){
submitButton.click();
}
}