mirror of
https://github.com/keycloak/keycloak.git
synced 2026-01-25 16:42:34 +00:00
* initial version playwright rewrite Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * small refactor cancel button Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added policies ciba to playwright Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added policies spec Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added flow tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added axe tests for flows Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added more tests for authentication flows Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added client advanced test to playwright Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added client authorization tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added axe check Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added test for initial access token Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added registration policies test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added client scope test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added client scope tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * updated dependency Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added client role test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fix running playwright tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added client saml Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added saml test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added events test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * more groups tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added group role test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added realm settings i18n tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added oidc and saml test for identity provider Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fix tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * update ci to run playwright instead of cypress Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * add masthead test and use component instead Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added organizations test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added export realm test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added partial import Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added realm roles Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * add realm client policies test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added client profile tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * merge errors Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * realm settings Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added realm settings general test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * add login tab and localization Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * realm settings accessibility test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added user profile test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added realm create test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added realm user registration spec Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added sessions test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added kerberos test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added ldap mapper test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added ldap test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * removed cypress tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * added user tab test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * run playwright tests instead of jest tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fixed some tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fixed tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fixed some more tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fix test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fixed tests Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * fix test Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * removed cypress Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * remove cyperss Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * Remove some more workflow remanants from Cypress Signed-off-by: Jon Koops <jonkoops@gmail.com> Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * lock file Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> * pr review Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> --------- Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com> Signed-off-by: Jon Koops <jonkoops@gmail.com> Co-authored-by: Jon Koops <jonkoops@gmail.com>
65 lines
2.0 KiB
TypeScript
65 lines
2.0 KiB
TypeScript
import ClientRepresentation from "@keycloak/keycloak-admin-client/lib/defs/clientRepresentation";
|
|
import { Page } from "@playwright/test";
|
|
|
|
export async function createClient(
|
|
page: Page,
|
|
client?: ClientRepresentation,
|
|
action?: () => Promise<void>,
|
|
) {
|
|
await page.getByTestId("createClient").click();
|
|
await page.getByTestId("clientId").fill(client?.clientId || "");
|
|
await page.getByTestId("name").fill(client?.name || "");
|
|
await page.getByTestId("description").fill(client?.description || "");
|
|
await page.getByLabel("Client type", { exact: true }).click();
|
|
await page
|
|
.getByRole("option", { name: client?.protocol || "OpenID Connect" })
|
|
.click();
|
|
|
|
if (client?.alwaysDisplayInConsole)
|
|
await page.getByText("Always display in UI").click();
|
|
|
|
if (action) {
|
|
await action();
|
|
} else {
|
|
await continueNext(page);
|
|
}
|
|
}
|
|
|
|
export async function clientCapabilityConfig(
|
|
page: Page,
|
|
client: ClientRepresentation,
|
|
) {
|
|
if (client.publicClient)
|
|
await page.getByText("Client authentication", { exact: true }).click();
|
|
|
|
if (client.directAccessGrantsEnabled)
|
|
await page.getByTestId("direct").click();
|
|
|
|
if (client.implicitFlowEnabled) await page.getByTestId("implicit").click();
|
|
|
|
if (client.serviceAccountsEnabled)
|
|
await page.getByTestId("service-account").click();
|
|
|
|
if (client.standardFlowEnabled) await page.getByTestId("standard").click();
|
|
|
|
if (
|
|
client.attributes?.["oauth2.device.authorization.grant.enabled"] === "true"
|
|
)
|
|
await page.getByTestId("oauth-device-authorization-grant").click();
|
|
|
|
if (client.attributes?.["oidc.ciba.grant.enabled"] === "true")
|
|
await page.getByTestId("oidc-ciba-grant").click();
|
|
}
|
|
|
|
export async function continueNext(page: Page) {
|
|
await page.getByRole("button", { name: "Next" }).click();
|
|
}
|
|
|
|
export async function save(page: Page) {
|
|
await page.getByRole("button", { name: "Save" }).click();
|
|
}
|
|
|
|
export async function cancel(page: Page) {
|
|
await page.getByRole("button", { name: "Cancel" }).click();
|
|
}
|