Skip to content

Commit 595395f

Browse files
lewisbirkstimja
andauthored
Improve stability of cancel tests (#881)
Co-authored-by: Tim Jacomb <[email protected]>
1 parent a10fbd1 commit 595395f

File tree

2 files changed

+11
-15
lines changed

2 files changed

+11
-15
lines changed

src/test/java/io/jenkins/plugins/pipelinegraphview/PipelineGraphViewCancelTest.java

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
package io.jenkins.plugins.pipelinegraphview;
22

3-
import static org.junit.jupiter.api.Assertions.assertTrue;
3+
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
44

55
import com.microsoft.playwright.Locator;
6-
import com.microsoft.playwright.Locator.WaitForOptions;
76
import com.microsoft.playwright.Page;
87
import com.microsoft.playwright.junit.UsePlaywright;
98
import com.microsoft.playwright.options.AriaRole;
10-
import com.microsoft.playwright.options.WaitForSelectorState;
119
import hudson.model.Result;
1210
import io.jenkins.plugins.casc.misc.ConfiguredWithCode;
1311
import io.jenkins.plugins.casc.misc.JenkinsConfiguredWithCodeRule;
@@ -37,17 +35,15 @@ void cancelButtonCancelsBuild(Page p, JenkinsConfiguredWithCodeRule j) throws Ex
3735
.goToBuild()
3836
.goToPipelineOverview();
3937

40-
assertTrue(p.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Cancel"))
41-
.isVisible());
38+
Locator cancelLocator = p.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Cancel"));
39+
assertThat(cancelLocator).isVisible();
4240

4341
op.cancel();
4442

4543
SemaphoreStep.success("wait/1", null);
4644
j.assertBuildStatus(Result.ABORTED, j.waitForCompletion(run));
4745

48-
Locator cancelLocator = p.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Cancel"));
49-
cancelLocator.waitFor(new WaitForOptions().setState(WaitForSelectorState.HIDDEN));
50-
assertTrue(cancelLocator.isHidden());
46+
assertThat(cancelLocator).isHidden();
5147
}
5248

5349
@Test
@@ -63,14 +59,12 @@ void cancelButtonDisappears(Page p, JenkinsConfiguredWithCodeRule j) throws Exce
6359
.goToBuild()
6460
.goToPipelineOverview();
6561

66-
assertTrue(p.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Cancel"))
67-
.isVisible());
62+
Locator cancelLocator = p.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Cancel"));
63+
assertThat(cancelLocator).isVisible();
6864

6965
SemaphoreStep.success("wait/1", null);
7066
j.assertBuildStatus(Result.SUCCESS, j.waitForCompletion(run));
7167

72-
Locator cancelLocator = p.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Cancel"));
73-
cancelLocator.waitFor(new WaitForOptions().setState(WaitForSelectorState.HIDDEN));
74-
assertTrue(cancelLocator.isHidden());
68+
assertThat(cancelLocator).isHidden();
7569
}
7670
}

src/test/java/io/jenkins/plugins/pipelinegraphview/playwright/PipelineOverviewPage.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,9 +154,11 @@ public PipelineOverviewPage configure() {
154154
}
155155

156156
public PipelineOverviewPage cancel() {
157-
page.click("#pgv-cancel");
158-
page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Yes"))
157+
page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Cancel"))
159158
.click();
159+
Locator dialog = page.getByRole(AriaRole.DIALOG);
160+
dialog.getByText("Yes").click();
161+
assertThat(dialog).isHidden();
160162
return this;
161163
}
162164

0 commit comments

Comments
 (0)