package org.keycloak.testsuite.console.page.realm; import org.jboss.arquillian.graphene.findby.FindByJQuery; import org.jboss.arquillian.graphene.page.Page; import org.keycloak.testsuite.console.page.fragment.OnOffSwitch; import org.keycloak.testsuite.page.Form; import org.openqa.selenium.WebElement; import org.openqa.selenium.support.FindBy; import java.util.Map; /** * Created by mhajas on 8/25/15. */ public class EmailSettings extends RealmSettings { @Override public String getUriFragment() { return super.getUriFragment() + "/smtp-settings"; } @Page private EmailSettingsForm form; public EmailSettingsForm form() { return form; } public class EmailSettingsForm extends Form { @FindBy(id = "smtpHost") private WebElement hostInput; @FindBy(id = "smtpPort") private WebElement portInput; @FindBy(id = "smtpFrom") private WebElement fromInput; @FindByJQuery("div[class='onoffswitch']:eq(0)") private OnOffSwitch enableSSL; @FindByJQuery("div[class='onoffswitch']:eq(1)") private OnOffSwitch enableStartTLS; @FindByJQuery("div[class='onoffswitch']:eq(2)") private OnOffSwitch enableAuthentication; public void setEnableSSL(boolean sslEnabled) { enableSSL.setOn(sslEnabled); } public void setEnableStartTLS(boolean startTLS) { enableSSL.setOn(startTLS); } public void setEnableAuthentication(boolean authentication) { enableSSL.setOn(authentication); } public void setHostInput(String value) { setInputValue(hostInput, value); } public void setPortInput(String value) { setInputValue(portInput, value); } public void setFromInput(String value) { setInputValue(fromInput, value); } public void setSmtpServer(Map<String, String> smtpServer) { setFromInput(smtpServer.get("from")); setHostInput(smtpServer.get("host")); setPortInput(smtpServer.get("port")); save(); } } }