41 lines
1.2 KiB
TypeScript
41 lines
1.2 KiB
TypeScript
import { expect, test } from "@playwright/test";
|
|
|
|
import { loginViaUi } from "./support/login-via-ui";
|
|
|
|
test("IDENTITY-LOGIN-001: mantiene la sesión después de iniciar sesión y recargar", async ({
|
|
page,
|
|
}) => {
|
|
await loginViaUi(page);
|
|
|
|
const accountMenu = page.locator("#account-menu");
|
|
|
|
await page.reload();
|
|
|
|
await expect(page).not.toHaveURL(/\/login(?:\?|$)/);
|
|
await expect(accountMenu).toBeVisible();
|
|
});
|
|
|
|
test("IDENTITY-LOGIN-002: rechaza credenciales incorrectas sin crear una sesión", async ({
|
|
page,
|
|
}) => {
|
|
await page.goto("/login");
|
|
|
|
const loginEmail = page.locator("#login-email");
|
|
const loginPassword = page.locator("#login-password");
|
|
const loginSubmit = page.locator("#login-submit");
|
|
const loginError = page.locator("#login-error");
|
|
const accountMenu = page.locator("#account-menu");
|
|
|
|
await expect(loginEmail).toBeVisible();
|
|
await expect(loginPassword).toBeVisible();
|
|
await expect(loginSubmit).toBeVisible();
|
|
|
|
await loginEmail.fill("unknown-user@example.invalid");
|
|
await loginPassword.fill("invalid-password");
|
|
await loginSubmit.click();
|
|
|
|
await expect(loginError).toBeVisible();
|
|
await expect(page).toHaveURL(/\/login(?:\?.*)?$/);
|
|
await expect(accountMenu).not.toBeVisible();
|
|
});
|