Skip to content

Commit 3ba0650

Browse files
committed
Update E2E test
1 parent c55e2ab commit 3ba0650

File tree

1 file changed

+62
-71
lines changed

1 file changed

+62
-71
lines changed

tests/e2e/membershipLists.spec.ts

Lines changed: 62 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -9,83 +9,74 @@ describe("Internal Membership tests", () => {
99
await becomeUser(page);
1010
await page.locator("a").filter({ hasText: "Membership Lists" }).click();
1111
await page
12-
.getByRole("textbox", { name: "NetID", exact: true })
13-
.fill("dsingh14");
12+
.getByRole("textbox", { name: "Enter NetIDs or Illinois" })
13+
.click();
14+
await page
15+
.getByRole("textbox", { name: "Enter NetIDs or Illinois" })
16+
.fill("dsingh14;invalid");
17+
await page.getByRole("button", { name: "Query Memberships" }).click();
18+
await expect(page.locator("#root")).toContainText("Paid Members (1)");
19+
await expect(page.locator("#root")).toContainText("Not Paid Members (1)");
20+
await expect(page.locator("#root")).toContainText("dsingh14");
21+
await expect(page.locator("#root")).toContainText("invalid");
22+
});
23+
});
24+
25+
describe("External Membership tests", () => {
26+
test("A user can create, modify, and delete external memberships", async ({
27+
page,
28+
becomeUser,
29+
}) => {
30+
const uuid = `e2e-${randomUUID()}`;
31+
await becomeUser(page);
32+
await page.locator("a").filter({ hasText: "Membership Lists" }).click();
33+
await page.getByRole("button", { name: "New List" }).click();
34+
await page.getByRole("textbox", { name: "New List ID" }).fill(uuid);
35+
await page.getByRole("textbox", { name: "Initial Member NetID" }).click();
36+
await page
37+
.getByRole("textbox", { name: "Initial Member NetID" })
38+
.fill("corete5");
39+
await page.getByRole("button", { name: "Create List" }).click();
40+
await expect(page.getByText("corete5")).toBeVisible();
41+
await expect(page.locator("tbody")).toContainText("corete5");
42+
await expect(page.locator("tbody")).toContainText("Active");
43+
await expect(page.getByText("Found 1 member.")).toBeVisible();
44+
await page.getByRole("button", { name: "Replace List" }).click();
1445
await page
15-
.getByRole("button", { name: "Query Membership", exact: true })
46+
.getByRole("textbox", { name: "jdoe2 [email protected]" })
47+
.fill("corete5\ncorete6");
48+
await page.getByRole("button", { name: "Compute Changes" }).click();
49+
await expect(page.locator("tbody")).toContainText("corete6");
50+
await expect(page.locator("tbody")).toContainText("Queued for addition");
51+
await expect(page.locator("tbody")).toContainText("Cancel Add");
52+
await page
53+
.getByRole("button", { name: "Save Changes (1 Additions, 0" })
1654
.click();
17-
await expect(page.getByText("dsingh14 is a paid member.")).toBeVisible();
18-
await page.getByRole("textbox", { name: "NetID", exact: true }).fill("z");
55+
await page.getByRole("button", { name: "Cancel", exact: true }).click();
56+
await expect(page.getByRole("main").nth(1)).toContainText(
57+
"Save Changes (1 Additions, 0 Removals)",
58+
);
1959
await page
20-
.getByRole("button", { name: "Query Membership", exact: true })
60+
.getByRole("button", { name: "Save Changes (1 Additions, 0" })
2161
.click();
22-
await expect(page.getByText("z is not a paid member.")).toBeVisible();
62+
await page.getByRole("button", { name: "Confirm and Save" }).click();
2363
await page
24-
.getByRole("textbox", { name: "NetID", exact: true })
25-
.fill("rjjones");
64+
.getByRole("row", { name: "CO corete5 Active Remove" })
65+
.getByRole("button")
66+
.click();
67+
await page.getByRole("button", { name: "Remove" }).click();
2668
await page
27-
.getByRole("button", { name: "Query Membership", exact: true })
69+
.getByRole("button", { name: "Save Changes (0 Additions, 2" })
2870
.click();
29-
await expect(page.getByText("rjjones is not a paid member.")).toBeVisible();
71+
await page.getByRole("button", { name: "Confirm and Save" }).click();
72+
await expect(page.getByText("Member list has been updated.")).toBeVisible();
73+
// Part 2
74+
await page.reload();
75+
await expect(
76+
page.getByText("Manage External Membership Lists"),
77+
).toBeVisible();
78+
await page.getByPlaceholder("Pick a list to manage").click();
79+
await expect(page.getByText(uuid)).not.toBeVisible();
80+
await expect(page.getByText("acmlivetesting")).toBeVisible();
3081
});
3182
});
32-
33-
// Commented out until we update the test to match the new UI.
34-
// describe("External Membership tests", () => {
35-
// test("A user can create, modify, and delete external memberships", async ({
36-
// page,
37-
// becomeUser,
38-
// }) => {
39-
// const uuid = `e2e-${randomUUID()}`;
40-
// await becomeUser(page);
41-
// await page.locator("a").filter({ hasText: "Membership Lists" }).click();
42-
// await page.getByRole("button", { name: "New List" }).click();
43-
// await page.getByRole("textbox", { name: "New List ID" }).fill(uuid);
44-
// await page.getByRole("textbox", { name: "Initial Member NetID" }).click();
45-
// await page
46-
// .getByRole("textbox", { name: "Initial Member NetID" })
47-
// .fill("corete5");
48-
// await page.getByRole("button", { name: "Create List" }).click();
49-
// await expect(page.getByText("corete5")).toBeVisible();
50-
// await expect(page.locator("tbody")).toContainText("corete5");
51-
// await expect(page.locator("tbody")).toContainText("Active");
52-
// await expect(page.getByText("Found 1 member.")).toBeVisible();
53-
// await page.getByRole("button", { name: "Replace List" }).click();
54-
// await page
55-
// .getByRole("textbox", { name: "jdoe2 asmith3@illinois.edu" })
56-
// .fill("corete5\ncorete6");
57-
// await page.getByRole("button", { name: "Compute Changes" }).click();
58-
// await expect(page.locator("tbody")).toContainText("corete6");
59-
// await expect(page.locator("tbody")).toContainText("Queued for addition");
60-
// await expect(page.locator("tbody")).toContainText("Cancel Add");
61-
// await page
62-
// .getByRole("button", { name: "Save Changes (1 Additions, 0" })
63-
// .click();
64-
// await page.getByRole("button", { name: "Cancel", exact: true }).click();
65-
// await expect(page.getByRole("main").nth(1)).toContainText(
66-
// "Save Changes (1 Additions, 0 Removals)",
67-
// );
68-
// await page
69-
// .getByRole("button", { name: "Save Changes (1 Additions, 0" })
70-
// .click();
71-
// await page.getByRole("button", { name: "Confirm and Save" }).click();
72-
// await page
73-
// .getByRole("row", { name: "CO corete5 Active Remove" })
74-
// .getByRole("button")
75-
// .click();
76-
// await page.getByRole("button", { name: "Remove" }).click();
77-
// await page
78-
// .getByRole("button", { name: "Save Changes (0 Additions, 2" })
79-
// .click();
80-
// await page.getByRole("button", { name: "Confirm and Save" }).click();
81-
// await expect(page.getByText("Member list has been updated.")).toBeVisible();
82-
// // Part 2
83-
// await page.reload();
84-
// await expect(
85-
// page.getByText("Manage External Membership Lists"),
86-
// ).toBeVisible();
87-
// await page.getByPlaceholder("Pick a list to manage").click();
88-
// await expect(page.getByText(uuid)).not.toBeVisible();
89-
// await expect(page.getByText("acmlivetesting")).toBeVisible();
90-
// });
91-
// });

0 commit comments

Comments
 (0)