Skip to content

Commit 618493b

Browse files
committed
chore: refactor tests
1 parent 0cda74f commit 618493b

1 file changed

Lines changed: 16 additions & 7 deletions

File tree

tests/spec/volumes.spec.ts

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,20 @@ async function removeVolumeViaApi(page: Page, volumeName: string) {
7272
.catch(() => undefined);
7373
}
7474

75+
async function gotoVolumeDetail(page: Page, volumeName: string) {
76+
const volumePath = `/api/environments/0/volumes/${encodeURIComponent(volumeName)}`;
77+
const detailResponse = page.waitForResponse((response) => {
78+
const request = response.request();
79+
return request.method() === 'GET' && new URL(response.url()).pathname === volumePath;
80+
});
81+
82+
await page.goto(`/volumes/${encodeURIComponent(volumeName)}`);
83+
const response = await detailResponse;
84+
expect(response.ok(), `Expected successful GET ${volumePath}`).toBeTruthy();
85+
await expect(page).toHaveURL(new RegExp(`/volumes/.+`));
86+
await expect(page.getByRole('heading', { level: 1, name: volumeName })).toBeVisible();
87+
}
88+
7589
function facetIds(title: string) {
7690
const key = title.toLowerCase();
7791
return {
@@ -126,11 +140,7 @@ test.describe('Volumes Page', () => {
126140

127141
try {
128142
await createVolumeViaApi(page, volumeName);
129-
await page.goto(`/volumes/${encodeURIComponent(volumeName)}`);
130-
await page.waitForLoadState('load');
131-
132-
await expect(page).toHaveURL(new RegExp(`/volumes/.+`));
133-
await expect(page.getByRole('heading', { level: 1, name: volumeName })).toBeVisible();
143+
await gotoVolumeDetail(page, volumeName);
134144
} finally {
135145
await removeVolumeViaApi(page, volumeName);
136146
}
@@ -168,8 +178,7 @@ test.describe('Volumes Page', () => {
168178
const volumeName = `e2e-badge-volume-${Date.now()}`;
169179
try {
170180
await createVolumeViaApi(page, volumeName);
171-
await page.goto(`/volumes/${encodeURIComponent(volumeName)}`);
172-
await page.waitForLoadState('load');
181+
await gotoVolumeDetail(page, volumeName);
173182

174183
await expect(page.getByText('Unused').first()).toBeVisible();
175184
} finally {

0 commit comments

Comments
 (0)