-
Catalin Comanici authoredCatalin Comanici authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
DomainPopup.java 3.40 KiB
package pages.domain;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.PageFactory;
import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory;
import pages.components.GenericSelect;
import pages.components.baseComponents.PageComponent;
import utils.PROPERTIES;
public class DomainPopup extends PageComponent {
public DomainPopup(WebDriver driver) {
super(driver);
PageFactory.initElements( new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
signatureCertSelect = new GenericSelect(driver, signatureCertSelectContainer);
smlClientAliasSelect = new GenericSelect(driver, smlClientAliasSelectContainer);
}
@FindBy(css = "domain-details-dialog button:nth-child(1)")
WebElement okBtn;
@FindBy(css = "domain-details-dialog button:nth-child(2)")
WebElement cancelBtn;
@FindBy(css = "#domainCode_id")
WebElement domainCodeInput;
@FindBy(css = "#smldomain_id")
WebElement smlDomainInput;
@FindBy(css = "#signatureKeyAlias_id")
WebElement signatureCertSelectContainer;
GenericSelect signatureCertSelect;
@FindBy(css = "#smlSMPId_id")
WebElement smlSMPIdInput;
@FindBy(xpath = "//div[contains(text(),' The Domain code already exists! ')]")
WebElement duplicateDomainErrorMsg;
// @FindBy(css = "#smlClientHeader_id")
// WebElement smlClientHeaderInput;
@FindBy(css = "#smlClientKeyAlias_id")
WebElement smlClientAliasSelectContainer;
GenericSelect smlClientAliasSelect;
public void clickOK(){
waitForElementToBeClickable(okBtn).click();
waitForElementToBeGone(okBtn);
}
public void clickCancel() {
waitForElementToBeClickable(cancelBtn).click();
waitForElementToBeGone(cancelBtn);
}
public boolean isLoaded() {
log.info("checking if domain popup is properly loaded");
return isVisible(okBtn)
&& isVisible(domainCodeInput)
&& isVisible(smlDomainInput)
&& isVisible(cancelBtn)
&& isEnabled(cancelBtn)
&& (null != signatureCertSelect)
&& (null != smlClientAliasSelect);
}
public boolean isDomainCodeInputEnabled() {
log.info("domain code input");
return isEnabled(domainCodeInput);}
public boolean isSMLDomainInputEnabled() {return isEnabled(smlDomainInput);}
public void fillSMLSMPIdInput(String text){
log.info("fill sml smp input with " + text);
waitForXMillis(500);
clearAndFillInput(smlSMPIdInput, text);
}
public void fillDataForNewDomain(String domainCode, String smlDomain, String smlSmpID, String clientCertHeader){
log.info("filling data for new domain");
clearAndFillInput(domainCodeInput, domainCode);
clearAndFillInput(smlDomainInput, smlDomain);
signatureCertSelect.selectFirstOption();
clearAndFillInput(smlSMPIdInput, smlSmpID);
smlClientAliasSelect.selectFirstOption();
}
public String getDuplicateDomainErrorMsgText()
{
String duplicateDomainMsg = duplicateDomainErrorMsg.getText();
return duplicateDomainMsg;
}
public boolean isEnableOkButton()
{
try {
return okBtn.isEnabled();
}
catch(Exception e)
{
e.printStackTrace();
return false;
}
}
public boolean isEnableCancelButton()
{
try {
return cancelBtn.isEnabled();
}
catch(Exception e)
{
e.printStackTrace();
return false;
}
}
public void clearAndFillDomainCodeInput(String domainCode) {
log.info("filling only domain code data for new domain");
clearAndFillInput(domainCodeInput, domainCode);
}
}