Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import school.redrover.ui.component.BaseComponent;
import school.redrover.ui.page.BaseProjectConfigurationPage;
import school.redrover.ui.page.BaseProjectStatusPage;
import school.redrover.ui.page.ProjectMovePage;
import school.redrover.ui.page.ProjectRenamingPage;

import java.util.function.Function;
Expand Down Expand Up @@ -72,7 +73,7 @@ public ProjectMovePage<ProjectStatusPage> clickSidebarMove() {
public ProjectRenamingPage<ProjectStatusPage> clickSidebarRename() {
renameMenuItem.click();

return new ProjectRenamingPage<>(getDriver(), projectStatusPageFactory);
return new ProjectRenamingPage<>(getDriver(), projectStatusPageFactory).waitUntilPageLoadJS();
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@

public class PipelineProjectSidebar extends BaseSidebarComponent<PipelineProjectSidebar, PipelineProjectStatusPage,
PipelineProjectConfigurationPage>
implements SidebarChangesTrait<PipelineProjectChangesPage>,
SidebarBuildNowTrait<PipelineProjectStatusPage>,
implements SidebarChangesTrait<PipelineProjectChangesPage>, SidebarBuildNowTrait<PipelineProjectStatusPage>,
SidebarCredentialsTrait<PipelineProjectCredentialsPage> {

public PipelineProjectSidebar(WebDriver driver) {
Expand Down Expand Up @@ -44,5 +43,4 @@ public PipelineProjectChangesPage getProjectChangesPage() {
public PipelineProjectCredentialsPage getProjectCredentialsPage() {
return new PipelineProjectCredentialsPage(getDriver());
}

}
17 changes: 10 additions & 7 deletions src/test/java/school/redrover/ui/page/ProjectRenamingPage.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,39 +7,42 @@

import java.util.function.Function;

public class ProjectRenamingPage<T extends BasePage<T>> extends BasePage<ProjectRenamingPage<?>> {

private final Function<WebDriver, T> projectStatusPageFactory;
public class ProjectRenamingPage<ProjectStatusPage extends BaseProjectStatusPage<ProjectStatusPage, ?>>
extends BasePage<ProjectRenamingPage<ProjectStatusPage>> {

@FindBy(name = "newName")
private WebElement newNameField;

@FindBy(name = "Submit")
private WebElement renameButton;

public ProjectRenamingPage(WebDriver driver, Function<WebDriver, T> projectStatusPageFactory) {
private final Function<WebDriver, ProjectStatusPage> projectStatusPageFactory;


public ProjectRenamingPage(WebDriver driver, Function<WebDriver, ProjectStatusPage> projectStatusPageFactory) {
super(driver);
this.projectStatusPageFactory = projectStatusPageFactory;
}

@Override
public ProjectRenamingPage<T> getPage() {
public ProjectRenamingPage<ProjectStatusPage> getPage() {
return this;
}

public ProjectRenamingPage<T> sendNewName(String newName) {
public ProjectRenamingPage<ProjectStatusPage> sendNewName(String newName) {
newNameField.sendKeys(newName);

return this;
}

public ProjectRenamingPage<T> clearName() {
public ProjectRenamingPage<ProjectStatusPage> clearName() {
newNameField.clear();

return this;
}

public T clickRenameButton() {
public ProjectStatusPage clickRenameButton() {
renameButton.click();

return projectStatusPageFactory.apply(getDriver()).waitUntilPageLoadJS();
Expand Down