keycloak-scim/js/apps/account-ui/test/my-resources.spec.ts
Erik Jan de Wit 7f9ea3afbb
added test for resources (#23706)
* added test for resources

fixes: #21251

* pr comments

* Rename `data-testId` to `data-testid`

---------

Co-authored-by: Jon Koops <jonkoops@gmail.com>
2023-10-17 07:42:38 +02:00

55 lines
1.9 KiB
TypeScript

import { test, expect } from "@playwright/test";
import { login } from "./login";
test.describe("My resources page", () => {
test("List my resources", async ({ page }) => {
await login(page, "jdoe", "jdoe", "photoz");
await page.getByTestId("resources").click();
await expect(page.getByRole("gridcell", { name: "one" })).toBeVisible();
});
test("Nothing is shared with alice", async ({ page }) => {
await login(page, "alice", "alice", "photoz");
await page.getByTestId("resources").click();
await page.getByTestId("sharedWithMe").click();
const tableData = await page.locator("table > tr").count();
expect(tableData).toBe(0);
});
test("Share one with alice", async ({ page }) => {
await login(page, "jdoe", "jdoe", "photoz");
await page.getByTestId("resources").click();
await page.getByTestId("expand-one").click();
await expect(page.getByText("This resource is not shared.")).toBeVisible();
await page.getByTestId("share-one").click();
await page.getByTestId("users").click();
await page.getByTestId("users").fill("alice");
await page.getByTestId("add").click();
await expect(page.getByRole("group", { name: "Share with" })).toHaveText(
"Share with alice",
);
await page.getByRole("button", { name: "Options menu" }).click();
await page.getByRole("option", { name: "album:view" }).click();
await page.getByRole("button", { name: "Options menu" }).click();
await page.getByTestId("done").click();
await page.getByTestId("expand-one").click();
expect(page.getByTestId("shared-with-alice")).toBeDefined();
});
test("One is shared with alice", async ({ page }) => {
await login(page, "alice", "alice", "photoz");
await page.getByTestId("resources").click();
await page.getByTestId("sharedWithMe").click();
const rowData = await page.getByTestId("row[0].name").allTextContents();
expect(rowData).toEqual(["one"]);
});
});