Add local automatic backups and Aniimo regions lists
All checks were successful
Deploy Sokko G / deploy (push) Successful in 18s

This commit is contained in:
Shinuwa 2026-09-24 09:39:33 +02:00
parent 2255de94a7
commit 0a3bb4dffd
24 changed files with 908 additions and 16 deletions

View file

@ -105,7 +105,15 @@ test("catalogue, overview and deferred Aniimo loading preserve filters across na
await page.locator('a[href="#/games/aniimo/aniimos"]').click();
await expect(cards(page)).toHaveCount(3);
await expect(page.getByRole("searchbox")).toHaveValue("EMBERPUP");
expect(requests).toHaveLength(3);
expect(requests).toHaveLength(5);
});
test("Aniimo exposes its regions list", async ({ page }) => {
await page.goto("/#/games/aniimo/lists");
await expect(page.getByRole("heading", { name: "Listes", exact: true })).toBeVisible();
await expect(page.locator("h2", { hasText: "Regions" })).toBeVisible();
await expect(page.getByText("14 éléments", { exact: true })).toBeVisible();
await expect(page.getByText("Champs de Cumulaine", { exact: true })).toBeVisible();
});
test("tabs, flip, matching variants and reset remain independent", async ({ page }) => {

View file

@ -240,6 +240,24 @@ test("imports and exports a toolbox payload", async ({ page }) => {
expect(download.suggestedFilename()).toBe("fixture-toolbox.sokkog.json");
});
test("opens the local automatic backup settings modal", async ({ page }) => {
await page.goto("/#/toolboxes");
await expect(page.getByRole("button", { name: "Sauvegarde automatique", exact: true })).toBeVisible();
await page.getByRole("button", { name: "Sauvegarde automatique", exact: true }).click();
const dialog = page.getByRole("dialog", { name: "Sauvegarde automatique" });
await expect(dialog).toBeVisible();
await expect(dialog.getByText("Cette fonctionnalité n’est pas disponible dans tous les navigateurs.")).toBeVisible();
await expect(dialog.getByText("Opera GX", { exact: true })).toBeVisible();
await expect(dialog.getByText("10 versions sont conservées.", { exact: true })).toBeVisible();
await expect(dialog.getByText("Dossier configuré :", { exact: true })).toBeVisible();
await expect(dialog.getByText("Aucun dossier", { exact: true })).toBeVisible();
await expect(dialog.getByRole("checkbox")).toBeVisible();
await dialog.getByRole("button", { name: "Fermer", exact: true }).last().click();
await expect(dialog).toHaveCount(0);
});
test("edits a table with formulas and persists values", async ({ page }) => {
await createToolbox(page, "Table E2E Toolbox");
await addTool(page, "Tableau");