package stepdefinitions;
import org.junit.Assert;
import io.cucumber.java.en.And;
import io.cucumber.java.en.Given;
import io.cucumber.java.en.Then;
import io.cucumber.java.en.When;
public class OrangeSteps extends BaseSteps {
/**
* Login
*/
@Given("Un usuario que tenga una cuenta creada y activa")
public void un_usuario_que_tenga_una_cuenta_creada_y_activa() {
System.out.println(">>El usuario tiene una cuenta valida");
}
@When("El usuario abre la pagina web")
public void el_usuario_abre_la_pagina_web() {
loginPage.navegateToHRM();
System.out.println(">>El usuario abrió la pagina HRM");
}
@And("El usuario escribe su nombre de usuario {string}")
public void el_usuario_escribe_su_nombre_de_usuario_admin(String userName) {
loginPage.sendCredentialsName(userName);
System.out.println(">>El usuario ingresó su nombre de usuario");
}
@And("El usuario escribe su contraseña {string}")
public void el_usuario_escribe_su_contraseña_admin123(String userPass) {
loginPage.sendCredentialsPass(userPass);
System.out.println(">>El usuario ingresó su contraseña");
}
@And("El usuario hace click en el boton Login")
public void el_usuario_hace_click_en_el_boton_login() {
loginPage.clickLoginButton();
System.out.println(">>El usuario hizo click en el boton de login");
}
@And("El usuario cierra su cesion")
public void el_usuario_cierra_su_cesion() {
dashboardPage.logOut();
System.out.println(">>El usuario ingresó cerró sesión");
}
@Then("El usuario se loguea exitosamente en la pagina")
public void el_usuario_se_loguea_exitosamente_en_la_pagina() {
Assert.assertEquals("Dashboard", loginPage.textFromTopBar());
System.out.println(">>El usuario ingresó correctamente al sitio");
}
@Then("El usuario obtiene el mensaje de error de credenciales invalidas")
public void el_usuario_obtiene_el_mensaje_de_error_de_credenciales_invalidas() {
Assert.assertEquals("Invalid credentials", loginPage.textFromAlertCredentials());
System.out.println(">>El usuario NO ingresó al sitio");
}
@Then("El usuario obtiene el mensaje de error de campos requeridos")
public void el_usuario_obtiene_el_mensaje_de_error_de_campos_requeridos() {
System.out.println("Placeholder del campo de usuario: " + loginPage.textErrorFromFieldName());
System.out.println("Placeholder del campo de contraseña: " + loginPage.textErrorFromFieldPassword());
System.out.println(">>El usuario NO ingresó un campo obligatorio");
}
/**
* Alta de usuario
*/
@Given("Un usuario que hace click en la sección PIM")
public void un_usuario_que_hace_click_en_la_sección_pim() {
System.out.println(">>El usuario ingresó al modulo PIM");
// dashboardPage.clickRightArrow();
dashboardPage.clickModulePIM();
}
@Given("Hace clic en el botón Add")
public void hace_clic_en_el_botón_add() {
System.out.println(">>El usuario hizo click en Add");
viewEmployeeListPage.clickAddButton();
}
@Given("Completa la información del nuevo empleado")
public void completa_la_información_del_nuevo_empleado() {
System.out.println(">>El usuario completo los campos personales del nuevo empleado");
addEmployeePage.completeFullName("hard", "hard", "hard");
}
@Given("Hace clic en el botón Save")
public void hace_clic_en_el_botón_save() {
System.out.println(">>El usuario hizo click en boton save");
addEmployeePage.clickSaveButton();
}
@Then("El usuario habrá creado a un nuevo empleado")
public void el_usuario_habrá_creado_a_un_nuevo_empleado() {
System.out.println(">>El usuario dio de alta al nuevo empleado");
}
/*
* Navegación
*/
@Given("Un usuario que hace click en la sección admin")
public void un_usuario_que_hace_click_en_la_sección_admin() {
dashboardPage.clickAdminSection();
System.out.println("El usuario hizo click en la sección Admin");
}
@Then("El usuario ingresó a la pagina sistem users")
public void el_usuario_ingresó_a_la_pagina_sistem_users() {
try {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/admin/viewSystemUsers",adminPage.getCurrentUrl());
System.out.println("El usuario ingresó a la sección Admin");
}
catch(AssertionError e){
System.out.println("La aserción falló: " + e.getMessage());
}
}
@Then("El usuario ingresó a la pagina view employee list")
public void el_usuario_ingresó_a_la_pagina_view_employee_list() {
try {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/pim/viewEmployeeList", viewEmployeeListPage.getCurrentUrl());
System.out.println("El usuario ingresó a la sección view Employee List");
}catch(AssertionError e) {
System.out.println("La aserción falló: " + e.getMessage());
}
}
@Given("Un usuario que hace click en la sección Leave")
public void un_usuario_que_hace_click_en_la_sección_leave() {
dashboardPage.clickLeaveSection();
}
@Then("El usuario ingresó a la pagina view Leave list")
public void el_usuario_ingresó_a_la_pagina_view_leave_list() {
try {
Assert.assertEquals("Leave", leaveListPage.textFromTopBar());
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/leave/viewLeaveList", leaveListPage.getCurrentUrl());
System.out.println("El usuario ingresó a la sección Leave");
}catch(AssertionError e) {
System.out.println("La aserción falló: " + e.getMessage());
}
}
@Given("Un usuario que hace click en la sección Time")
public void un_usuario_que_hace_click_en_la_sección_time() {
dashboardPage.clickTimeSection();
}
@Then("El usuario ingresó a la pagina view Employee Timesheet")
public void el_usuario_ingresó_a_la_pagina_view_employee_timesheet() {
try {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/time/viewEmployeeTimesheet", leaveListPage.getCurrentUrl());
// Assert.assertEquals("Time /Timesheets", timePage.textFromTopBar());
System.out.println("El usuario ingresó a la sección Time");
}catch(AssertionError e){
System.out.println("La aserción falló: " + e.getMessage());
}
}
@Given("Un usuario que hace click en la sección Recruitment")
public void un_usuario_que_hace_click_en_la_sección_recruitment() {
dashboardPage.clickRecruitmentSection();
}
@Then("El usuario ingresó a la pagina view Candidates")
public void el_usuario_ingresó_a_la_pagina_view_candidates() {
try {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/recruitment/viewCandidates", recruitmentPage.getCurrentUrl());
Assert.assertEquals("Recruitment", recruitmentPage.textFromTopBar());
System.out.println("El usuario ingresó a la sección Recruitment");
}
catch(AssertionError e){
System.out.println("La aserción falló: " + e.getMessage());
}
}
@Given("Un usuario que hace click en la sección MyInfo")
public void un_usuario_que_hace_click_en_la_sección_my_info() {
dashboardPage.clickMyInfoSection();
}
@Then("El usuario ingresó a la pagina Info")
public void el_usuario_ingresó_a_la_pagina_info() {
Assert.assertEquals("PIM", myInfoPage.textFromTopBar());
System.out.println("El usuario ingresó a la sección My Info");
}
@Given("Un usuario que hace click en la sección Performance")
public void un_usuario_que_hace_click_en_la_sección_performance() {
dashboardPage.clickPerformanceSection();
}
@Then("El usuario ingresó a la pagina search Evaluate Performance")
public void el_usuario_ingresó_a_la_pagina_search_evaluate_performance() {
try {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/performance/searchEvaluatePerformanceReview",performancePage.getCurrentUrl());
Assert.assertEquals("Performance\r\n"+ "Manage Reviews", performancePage.textFromTopBar());
System.out.println("El usuario ingresó a la sección My Info");
}
catch(AssertionError e){
System.out.println("La aserción falló: " + e.getMessage());
}
}
@Given("Un usuario que hace click en la sección Directory")
public void un_usuario_que_hace_click_en_la_sección_directory() {
dashboardPage.clickDirectorySection();
}
@Then("El usuario ingresó a la pagina view Directory")
public void el_usuario_ingresó_a_la_pagina_view_directory() {
try {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/directory/viewDirectory", directoryPage.getCurrentUrl());
Assert.assertEquals("Directory", directoryPage.textFromTopBar());
System.out.println("El usuario ingresó a la sección Directory");
}
catch(AssertionError e) {
System.out.println("La aserción falló: " + e.getMessage());
}
}
@Given("Un usuario que hace click en la sección Maintenance")
public void un_usuario_que_hace_click_en_la_sección_maintenance() {
dashboardPage.clickMaintenanceSection();
}
@Then("El usuario ingresó a la pagina purgeEmployee")
public void el_usuario_ingresó_a_la_pagina_purge_employee() {
try {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/maintenance/purgeEmployee", maintenancePage.getCurrentUrl());
System.out.println("El usuario ingresó a la sección Mantenimiento");
}catch(AssertionError e) {
System.out.println("La aserción falló: " + e.getMessage());
}
}
@And("El usuario regresa a la pagina dashboard")
public void el_usuario_regresa_a_la_pagina_dashboard() {
maintenancePage.navigationBack();
}
@Given("Un usuario que hace click en la sección Claim")
public void un_usuario_que_hace_click_en_la_sección_claim() {
dashboardPage.clickClaimSection();
}
@Then("El usuario ingresó a la pagina viewAssignClaim")
public void el_usuario_ingresó_a_la_pagina_view_assign_claim() {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/claim/viewAssignClaim", claimPage.getCurrentUrl());
Assert.assertEquals("Claim", claimPage.textFromTopBar());
System.out.println("El usuario ingresó a la sección Claim");
}
@Given("Un usuario que hace click en la sección Buzz")
public void un_usuario_que_hace_click_en_la_sección_buzz() {
dashboardPage.clickBuzzSection();
}
@Then("El usuario ingresó a la pagina viewBuzz")
public void el_usuario_ingresó_a_la_pagina_view_buzz() {
Assert.assertEquals("https://opensource-demo.orangehrmlive.com/web/index.php/buzz/viewBuzz", buzzPage.getCurrentUrl());
Assert.assertEquals("Buzz", buzzPage.textFromTopBar());
System.out.println("El usuario ingresó a la sección Buzz");
}
}