From 16e8bbf8112b524c8e4c9e938c6b5d1da8f0cd44 Mon Sep 17 00:00:00 2001 From: Bruno Charest Date: Mon, 24 Aug 2026 21:58:14 -0400 Subject: [PATCH] fix(e2e): split-view - openFile sans reload (les onglets simple-pane ne sont pas restaures au chargement) - un goto() entre deux openFile perd les onglets du singleton (PaneManager.init ne restaure que les splits >= 2 panes) - expansion du vault seulement si le fichier n est pas deja visible --- tests/e2e/split-view.spec.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/tests/e2e/split-view.spec.js b/tests/e2e/split-view.spec.js index 7989242..9afaafe 100644 --- a/tests/e2e/split-view.spec.js +++ b/tests/e2e/split-view.spec.js @@ -34,14 +34,20 @@ async function login(page) { async function openFile(page, vault, filePath) { // Ouvre via l'arbre sidebar : le clic passe par TabManager (système d'onglets). // Le deep-link #file= ouvre l'ancien viewer sans onglets — inutilisable ici. - await page.goto('/'); - await page.waitForTimeout(300); - const vaultItem = page.locator(`.vault-item[data-vault="${vault}"]`); - if (await vaultItem.count() > 0) { - await vaultItem.click(); - await page.waitForTimeout(700); + // Pas de reload si déjà sur la page : un goto('/') perdrait les onglets + // simple-pane (non restaurés depuis localStorage au chargement). + if (!(await page.locator('#sidebar').count())) { + await page.goto('/'); + await page.waitForTimeout(300); } const treeItem = page.locator(`.tree-item[data-vault="${vault}"][data-path="${filePath}"]`); + if (!(await treeItem.isVisible().catch(() => false))) { + const vaultItem = page.locator(`.vault-item[data-vault="${vault}"]`); + if (await vaultItem.count() > 0) { + await vaultItem.click(); + await page.waitForTimeout(700); + } + } // dblclick → openPersistent : onglet persistant (le clic simple ouvre un // preview qui remplace l'onglet précédent — inutilisable pour les tests multi-onglets) await treeItem.dblclick({ timeout: 5000 });