diff --git a/src/test/java/school/redrover/FreestyleProjectTest.java b/src/test/java/school/redrover/FreestyleProjectTest.java index 2c1914b86..4c14cb445 100644 --- a/src/test/java/school/redrover/FreestyleProjectTest.java +++ b/src/test/java/school/redrover/FreestyleProjectTest.java @@ -301,4 +301,20 @@ public void testAddParameterForParameterizationOfBuilds() { Assert.assertTrue(selectedParameterList.contains(parameterName)); } + + @Test(dependsOnMethods = "testCreate") + public void testNavigationToWorkspaceAfterBuild() { + final String expectedHeadingText = "Workspace of " + PROJECT_NAME + " on Built-In Node"; + + String actualHeadingText = new HomePage(getDriver()) + .openProject(PROJECT_NAME, new FreestyleProjectStatusPage(getDriver())) + .getSidebarComponent() + .clickSidebarBuildNow() + .getSidebarComponent() + .clickSidebarWorkspace() + .getHeader() + .getText(); + + Assert.assertEquals(actualHeadingText, expectedHeadingText); + } } diff --git a/src/test/java/school/redrover/page/FreestyleProjectWorkspacePage.java b/src/test/java/school/redrover/page/FreestyleProjectWorkspacePage.java index 370d11eb1..728dce854 100644 --- a/src/test/java/school/redrover/page/FreestyleProjectWorkspacePage.java +++ b/src/test/java/school/redrover/page/FreestyleProjectWorkspacePage.java @@ -1,11 +1,17 @@ package school.redrover.page; import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; +import org.openqa.selenium.support.ui.ExpectedConditions; import school.redrover.common.BasePage; public class FreestyleProjectWorkspacePage extends BasePage { + @FindBy(xpath = "//span[text()='Wipe Out Current Workspace']") + private WebElement wipeOutWorkspaceLink; + public FreestyleProjectWorkspacePage(WebDriver driver) { super(driver); } @@ -17,6 +23,8 @@ public FreestyleProjectWorkspacePage getPage() { @Override public FreestyleProjectWorkspacePage waitUntilPageLoad() { - return null; + getWait5().until(ExpectedConditions.visibilityOf(wipeOutWorkspaceLink)); + + return this; } }