sokko-g/e2e/helpers/storage.js
Shinuwa 7348969ac4
All checks were successful
Deploy Sokko G / deploy (push) Successful in 15s
Improve toolbox persistence and goal tree coverage
2026-08-24 16:11:22 +02:00

30 lines
1.2 KiB
JavaScript

// Rôle : isole les scénarios Playwright en vidant le stockage local Sokko G.
/* global window */
export async function resetSokkoStorage(page) {
await page.goto("/");
await page.evaluate(async () => {
window.localStorage.clear();
window.sessionStorage.clear();
await new Promise((resolve, reject) => {
const request = window.indexedDB.open("sokkog", 1);
request.onupgradeneeded = () => {
const db = request.result;
if (!db.objectStoreNames.contains("kv")) db.createObjectStore("kv");
if (!db.objectStoreNames.contains("modules")) db.createObjectStore("modules", { keyPath: "key" });
};
request.onerror = () => reject(request.error);
request.onsuccess = () => {
const db = request.result;
const transaction = db.transaction(["kv", "modules"], "readwrite");
transaction.objectStore("kv").clear();
transaction.objectStore("modules").clear();
transaction.oncomplete = () => {
db.close();
resolve();
};
transaction.onerror = () => reject(transaction.error);
transaction.onabort = () => reject(transaction.error);
};
});
});
}