package pages;
import org.openqa.selenium.WebDriver;
/**
* LoginPage representa la pagina de login del UAT es una subclase de BasePage
* @author Martin Gerez
*
*/
public class LoginPage extends BasePage{
private String usernameField = "//input[@placeholder ='Username']";
private String passwordField = "//input[@placeholder ='Password']";
private String topBarHeader = "//div[@class='oxd-topbar-header-title']";
private String buttonLogin = "//button[normalize-space()='Login']";
private String credentialError = "//div[@class='oxd-alert-content oxd-alert-content--error']";
/**
* Crea una instancia de loginPage partir de los metodos heredados
*/
public LoginPage(WebDriver driver) {
super(driver);
}
/**
* Metodo para abrir la pagina del UAT
*/
public void navegateToHRM() {
navigateTo("https://opensource-demo.orangehrmlive.com/web/index.php/auth/login");
}
/**
* Para escribir el nombre de usuario en el campo del nombre de la credencial
* @param user String que representa el nombre de usuario
*/
public void sendCredentialsName(String user) {
write(usernameField, user);
}
/**
* Para escribir el password de usuario en el campo de password de la credencial
* @param pass String que representa el password del usuario
*/
public void sendCredentialsPass(String pass) {
write(passwordField,pass);
}
/**
* Para realizar un click en el boton de login
*/
public void clickLoginButton() {
clickElement(buttonLogin);
}
/**
* Devuelve el texto del top bar
* @return devuelve el string encontrado en el top bar
*/
public String textFromTopBar() {
return textFromElement(topBarHeader);
}
/**
* Devuelve el texto del mensaje de alerta para credenciales invalidas
* @return devuelve el string del mensaje de error
*/
public String textFromAlertCredentials() {
return textFromElement(credentialError);
}
/**
* Devuelve el texto del mensaje de alerta en el campo password
* @return devuelve el string del mensaje de error
*/
public String textErrorFromFieldName() {
return errorFromPlaceHolder(usernameField);
}
public String textErrorFromFieldPassword() {
return errorFromPlaceHolder(passwordField);
}
}
//public class LoginPage{
//
// @FindBy(name ="username")
// WebElement txtName;
//
// @FindBy(name ="password")
// WebElement txtPassword;
//
// @FindBy(tagName = "button")
// WebElement buttonLogin;
//
// public PageLogin(WebDriver driver){
// PageFactory.initElements(driver, this);
// }
//
// public void ingresarCredenciales(String user, String password) {
// txtName.sendKeys(user);
// txtPassword.sendKeys(password);
// }
//
// public void hacerClickEnLogin() {
// buttonLogin.click();
// }
//
//
//}