Skip to content

Commit ed6d9ed

Browse files
Fix e2e test selector ambiguity
- Scope selectors to dialog to avoid 'Start date' resolving to multiple elements - Add proper waits for modal state changes - Ensure test robustness by waiting for modal to close before reopening Co-Authored-By: sahil.lavingia@gmail.com <sahil.lavingia@gmail.com>
1 parent 820bde1 commit ed6d9ed

File tree

1 file changed

+13
-8
lines changed

1 file changed

+13
-8
lines changed

e2e/tests/company/administrator/role-field-conditional-rendering.spec.ts

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -73,20 +73,25 @@ test.describe("Role field conditional rendering", () => {
7373
await page.getByRole("link", { name: "People" }).click();
7474

7575
await page.getByRole("button", { name: "Invite contractor" }).click();
76-
const roleField = page.getByLabel("Role");
76+
77+
const dialog = page.getByRole("dialog", { name: "Who's joining?" });
78+
const roleField = dialog.getByLabel("Role");
7779
await roleField.click();
7880
await expect(page.getByRole("option")).toHaveCount(0);
79-
80-
await page.getByLabel("Email").fill("test@example.com");
81+
82+
await dialog.getByLabel("Email").fill("test@example.com");
8183
await roleField.fill("Developer");
82-
await page.getByLabel("Start date").fill("2025-01-01");
83-
await page.getByRole("button", { name: "Send invite" }).click();
84-
84+
await dialog.getByLabel("Start date").fill("2025-01-01");
85+
await dialog.getByRole("button", { name: "Send invite" }).click();
86+
8587
await expect(page.getByText("Invite sent")).toBeVisible();
8688
await page.getByRole("button", { name: "Close" }).click();
87-
89+
90+
await expect(dialog).not.toBeVisible();
91+
8892
await page.getByRole("button", { name: "Invite contractor" }).click();
89-
const newRoleField = page.getByLabel("Role");
93+
const newDialog = page.getByRole("dialog", { name: "Who's joining?" });
94+
const newRoleField = newDialog.getByLabel("Role");
9095
await newRoleField.click();
9196
await expect(page.getByRole("option", { name: "Developer" })).toBeVisible();
9297
});

0 commit comments

Comments
 (0)