/******************************************************************************* * Copyright (c) 2010-2014 SAP AG and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * SAP AG - initial API and implementation *******************************************************************************/ package org.eclipse.skalli.selenium.tests.simple; import org.eclipse.skalli.selenium.pageobjects.MainHeaderPage; import org.eclipse.skalli.selenium.pageobjects.concrete.MainPage; import org.eclipse.skalli.selenium.pageobjects.concrete.ProjectDetailsPage; import org.eclipse.skalli.selenium.tests.Constants; import org.eclipse.skalli.selenium.tests.TestUtilities; import org.eclipse.skalli.selenium.utils.DriverProvider; import org.junit.After; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import org.openqa.selenium.WebDriver; import org.openqa.selenium.support.PageFactory; /** * This tests whether all pages have the standard layout * ({@link org.eclipse.skalli.selenium.pageobjects.MainHeaderPage}) */ public class MainHeaderPageTest { private static WebDriver driver; private static MainHeaderPage page; private static MainPage mainPage; private static ProjectDetailsPage projectDetailsPage; @BeforeClass public static void setupClass() { driver = TestUtilities.initializeDriver(); initializePageObjects(); } private static void initializePageObjects() { page = PageFactory.initElements(driver, MainHeaderPage.class); mainPage = PageFactory.initElements(driver, MainPage.class); projectDetailsPage = PageFactory.initElements(driver, ProjectDetailsPage.class); } @Before public void setup() { //navigates to the main page before every test DriverProvider.navigateToBaseUrl(driver); mainPage.isDisplayedWithExplicitWait(); } @After public void proof() { //checks after the test whether a MainHeaderPage page is displayed or not page.isDisplayedWithExplicitWait(); } @Test public void mainHeaderPageLayoutOnLoginPageTest() { if (!DriverProvider.isOnLoginPage(driver)) { DriverProvider.goToLoginPage(); //proof standard page layout here instead of doing it in proof() page.isDisplayedWithExplicitWait(); DriverProvider.login(driver); } } @Test public void mainHeaderPageLayoutOnMainPageTest() { mainPage.isDisplayedWithExplicitWait(); } @Test public void mainHeaderPageLayoutOnAllProjectsLinkTest() { mainPage.isDisplayedWithExplicitWait(); mainPage.clickAllProjectsLink(); } @Test public void mainHeaderPageLayoutOnMyProjectsLinkTest() { mainPage.isDisplayedWithExplicitWait(); mainPage.clickMyProjectsLink(); } @Test public void mainHeaderPageLayoutOnMyFavoritesLinkTest() { mainPage.isDisplayedWithExplicitWait(); mainPage.clickMyFavoritesLink(); } @Test public void mainHeaderPageLayoutOnCreateProjectLinkTest() { mainPage.isDisplayedWithExplicitWait(); mainPage.clickCreateProjectLink(); } @Test public void mainHeaderPageLayoutOnShowAllTagsLinkTest() { mainPage.isDisplayedWithExplicitWait(); mainPage.clickShowAllTagsLink(); } @Test public void mainHeaderPageLayoutOnSearchTest() { mainPage.isDisplayedWithExplicitWait(); mainPage.sendKeysToSearchFieldAndSubmit("test"); } @Test public void mainHeaderPageLayoutOnEditLinkTest() { DriverProvider.navigateToSubUrl(driver, Constants.SKALLI_PROJECT_SUB_URL); projectDetailsPage.isDisplayedWithExplicitWait(); projectDetailsPage.clickEditLink(); } @Test public void mainHeaderPageLayoutOnAddProjectToJiraLinkTest() { DriverProvider.navigateToSubUrl(driver, Constants.SKALLI_PROJECT_SUB_URL); projectDetailsPage.isDisplayedWithExplicitWait(); projectDetailsPage.clickAddProjectToJiraLink(); } @Test public void mainHeaderPageLayoutOnCreateGitGerritRepoLinkTest() { DriverProvider.navigateToSubUrl(driver, Constants.SKALLI_PROJECT_SUB_URL); projectDetailsPage.isDisplayedWithExplicitWait(); projectDetailsPage.clickCreateGitGerritRepoLink(); } @Test public void mainHeaderPageLayoutOnRequestPerforceProjectLinkTest() { DriverProvider.navigateToSubUrl(driver, Constants.SKALLI_PROJECT_SUB_URL); projectDetailsPage.isDisplayedWithExplicitWait(); projectDetailsPage.clickRequestPerforceProjectLink(); } }