package org.societies.integration.api.selenium.components;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
public class ProfileSettingsAddConditionAndOutcomeDialog extends BasePageComponent {
private static final String DIALOG_XPATH = "//*[@id='mainForm:addConditionAndOutcomeDialog']";
private static final String SAVE_BTN_XPATH = "//*[@id='mainForm:addConditionAndOutcomeDialog']//*[contains(@class, 'ui-button-text') and starts-with(text(),'Save')]";
private static final String CANCEL_BTN_XPATH = "//*[@id='mainForm:addConditionAndOutcomeDialog']//*[contains(@class, 'ui-button-text') and text()='Cancel']";
private static final String NAME_FIELD_XPATH = "//*[@id='mainForm:addConditionName']";
private static final String NAME_FIELD_ID = "mainForm:addConditionName";
private static final String OPERATOR_FIELD_ID = "mainForm:addConditionOperator";
private static final String OPERATOR_FIELD_XPATH = "//*[@id='mainForm:']";
private static final String VALUE_FIELD_XPATH = "//*[@id='mainForm:addConditionValue']";
private static final String OUTCOME_FIELD_XPATH = "//*[@id='mainForm:addOutcomeValue']";
public ProfileSettingsAddConditionAndOutcomeDialog(WebDriver driver) {
super(driver);
waitUntilVisible(By.xpath(DIALOG_XPATH));
}
public ProfileSettingsAddConditionAndOutcomeDialog clickSave() {
clickButton(By.xpath(SAVE_BTN_XPATH));
waitUntilNotVisible(By.xpath(DIALOG_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog clickCancel() {
clickButton(By.xpath(CANCEL_BTN_XPATH));
waitUntilNotVisible(By.xpath(DIALOG_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog setName(String value) {
pickDropdownValue(value, NAME_FIELD_ID);
// setFieldValue(value, By.xpath(NAME_FIELD_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog setOperator(String value) {
super.pickDropdownValue(value, OPERATOR_FIELD_ID);
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog setConditionValue(String value) {
setFieldValue(value, By.xpath(VALUE_FIELD_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog setOutcomeValue(String value) {
setFieldValue(value, By.xpath(OUTCOME_FIELD_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog verifyConditionFieldsVisible() {
waitUntilVisible(By.xpath(NAME_FIELD_XPATH));
waitUntilVisible(By.xpath(OPERATOR_FIELD_XPATH));
waitUntilVisible(By.xpath(VALUE_FIELD_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog verifyConditionFieldsNotVisible() {
waitUntilNotVisible(By.xpath(NAME_FIELD_XPATH));
waitUntilNotVisible(By.xpath(OPERATOR_FIELD_XPATH));
waitUntilNotVisible(By.xpath(VALUE_FIELD_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog verifyOutcomeFieldsVisible() {
waitUntilVisible(By.xpath(OUTCOME_FIELD_XPATH));
return this;
}
public ProfileSettingsAddConditionAndOutcomeDialog verifyOutcomeFieldsNotVisible() {
waitUntilNotVisible(By.xpath(OUTCOME_FIELD_XPATH));
return this;
}
}