package br.com.pixeon.pages;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import br.com.pixeon.util.Webdriver;
public class Login {
/**
* Construtor da página Login.
*/
public Login(){
}
/**
* Retorna o título da página.
* @return Título da página.
*/
public String retornaTitle(){
return Webdriver.obterInstancia().getTitle();
}
/**
* Inseri o login do usuário.
* @param login Nome do login do usuário.
*/
public void inserirLogin(String login){
WebElement e = Webdriver.obterInstancia().findElement(By.id("login"));
e.clear();
e.sendKeys(login);
}
/**
* Limpa o campo Login.
*/
public void limparCampoLogin(){
WebElement e = Webdriver.obterInstancia().findElement(By.id("login"));
e.clear();
}
/**
* Inseri a senha do usuário.
* @param senha Senha do usuário.
*/
public void inserirSenha(String senha){
WebElement e = Webdriver.obterInstancia().findElement(By.id("password"));
e.clear();
e.sendKeys(senha);
}
/**
* Limpa o campo Senha.
*/
public void limparCampoSenha(){
WebElement e = Webdriver.obterInstancia().findElement(By.id("password"));
e.clear();
}
/**
* Pressiona no botão Entrar.
*/
public void pressionarBotaoEntrar(){
Webdriver.obterInstancia().findElement(By.id("btSumitLogin")).click();
}
/**
* Pressiona no link Esqueci Minha Senha.
*/
public void pressionarLinkEsqueciMinhaSenha(){
Webdriver.obterInstancia().findElement(By.linkText("esqueci minha senha")).click();
}
/**
* Realiza o login do usuário,
* @param login
* @param senha
*/
/*
public void realizarLogin(String login, String senha){
inserirLogin(login);
inserirSenha(senha);
pressionarLinkEsqueciMinhaSenha();
}*/
// --- NOVO ---
/**
* Verifica se carregou a página de Login, baseando-se no formulário de login.
* @return True caso tenha aberto a página de login e False caso contrário.
*/
public boolean carregouPaginaLogin() {
boolean resultado = false;
if (Webdriver.obterInstancia().findElement(By.id("formLoginBox")).isDisplayed()) {
resultado = true;
}
return resultado;
}
/**
* Exibe no console a mensagem de erro, exibida na página de login.
*/
public void exibeMensagemErro(){
System.out.println(Webdriver.obterInstancia().findElement(By.id("sysMessages")).getText());
}
/**
* Retorna a mensagem de erro, exibida na página de login.
* @return Mensagem de erro.
*/
public String retornaMensagemErro() {
return Webdriver.obterInstancia().findElement(By.id("sysMessages")).getText();
}
/**
* Retorna a mensagem de erro, exibida na página de login, tratando a quebra de linha.
* @return Mensagem de erro, suprimindo a quebra de linha, LF.
*/
public String retornaMensagemErroAlternativa1() {
String x = Webdriver.obterInstancia().findElement(By.id("sysMessages")).getText();
String aux = "";
for(int i=0; i<x.length();i++){
if(x.charAt(i)!= 10){
aux = aux + x.charAt(i);
} else
aux = aux + " ";
}
return aux;
}
/**
* Verifica se o formulário para selecionar a clínica está visível.
* @return True caso o formulário esteja visível e False caso contrário.
*/
public boolean existeFormularioSelecionarClinica() {
boolean resultado = false;
if (Webdriver.obterInstancia().findElement(By.id("selClinicOptions")).isDisplayed()) {
resultado = true;
}
return resultado;
}
/**
* Retorna o valor do atributo placeholder do campo Login.
* @return Placeholder do campo Login.
*/
public String retornaPlaceHolderLogin() {
return Webdriver.obterInstancia().findElement(By.id("login")).getAttribute("placeholder");
}
/**
* Retorna o valor do atributo placeholder do campo Senha.
* @return Placeholder do campo Senha.
*/
public String retornaPlaceHoldSenha() {
return Webdriver.obterInstancia().findElement(By.id("password")).getAttribute("placeholder");
}
/**
* Retornar o valor do atributo placeholder do campo que contenha o ID com o nome informado.
* @param idCampo Nome do ID do campo.
* @return Placeholder do campo.
*/
public String retornaPlaceHoldCampo(String idCampo) {
return Webdriver.obterInstancia().findElement(By.id(idCampo)).getAttribute("placeholder");
}
}