package org.expressolivre.cte.common; import org.expressolivre.cte.pages.calendar.AppointmentPage; import org.expressolivre.cte.pages.calendar.CalendarPage; import org.expressolivre.cte.pages.calendar.CalendarTodayViewPage; import org.expressolivre.cte.pages.common.HomePage; import org.openqa.selenium.support.PageFactory; import org.testng.annotations.BeforeMethod; /** * @author L.F.Estivalet (Serpro) * * Created on Feb 8, 2011 at 9:16:54 AM * */ public class BaseCalendarTestCase extends BaseTestCase { /** * Instancia da pagina do calendario utilizada pelos demais testes da * agenda. */ protected CalendarPage cp; /** * Antes dos demais testes do modulo do calendario serem iniciados, este * teste eh executado. Ele faz o login no Expresso e vai direto para a * pagina incial. Depois clica-se no modulo Calendario para entao * inicializar componentes da pagina. */ @BeforeMethod public void init() { HomePage hp = PageFactory.initElements(driver, HomePage.class); hp.enterCalendar(); cp = PageFactory.initElements(driver, CalendarPage.class); } /** * Abre visao diaria da agenda. * * @return Pagina da visao diaria da agenda. */ public CalendarTodayViewPage openTodayView() { cp.openTodayView(); return PageFactory.initElements(driver, CalendarTodayViewPage.class); } /** * Cria um novo compromisso. * * @param date * Data do compromisso. * @return Pagina para adicionar informacoes do compromisso. */ public AppointmentPage newAppointment(String date) { cp.openAppointmentPage(date); return PageFactory.initElements(driver, AppointmentPage.class); } }