✅(e2e) add test for 401 redirect and re-login flow

Ensures that when a user's session expires, they are
redirected to /401, can log back in, and are then sent
back to the page they were originally trying to access.
This commit is contained in:
Nathan Vasse
2026-02-23 15:44:26 +01:00
parent a78b017f06
commit c2dcff5445
@@ -0,0 +1,35 @@
import test, { expect } from "@playwright/test";
import { clearDb, keyCloakSignIn, login } from "./utils-common";
import { createFolderInCurrentFolder } from "./utils-item";
import { navigateToFolder } from "./utils-navigate";
test("Redirects to /401 when session cookies are cleared then re-login and get redirected to the folder", async ({
page,
context,
}) => {
await clearDb();
await page.goto("/");
await keyCloakSignIn(page, "drive", "drive");
await createFolderInCurrentFolder(page, "Secret folder");
await navigateToFolder(page, "Secret folder", ["My files", "Secret folder"]);
const folderUrl = page.url();
await context.clearCookies();
await page.reload();
await expect(page).toHaveURL(/.*\/401/, { timeout: 10000 });
await expect(
page.getByText("You need to be logged in to access the documents."),
).toBeVisible();
await page
.locator(".drive__generic-disclaimer")
.getByRole("button", { name: "Login" })
.click();
await keyCloakSignIn(page, "drive", "drive", false);
await expect(page).toHaveURL(folderUrl);
});