diff --git a/apps/web/cypress/e2e/sidebar.cy.ts b/apps/web/cypress/e2e/sidebar.cy.ts index a7d20ab..2d69946 100644 --- a/apps/web/cypress/e2e/sidebar.cy.ts +++ b/apps/web/cypress/e2e/sidebar.cy.ts @@ -58,4 +58,26 @@ describe("Sidebar — settings menu and account menu", () => { cy.visit("/foyer"); cy.url().should("include", "/parametres/foyer"); }); + + it("collapses to an icon-only rail and back, persisting the choice across reloads", () => { + cy.visit("/"); + + cy.get(".app-sidebar").should("not.have.class", "collapsed"); + cy.contains("nav a", "Planning").should("be.visible"); + + cy.get(".app-sidebar__collapse-toggle").click(); + cy.get(".app-sidebar").should("have.class", "collapsed"); + // The label text hides (not removed from the DOM — still there for the + // `title` tooltip/accessibility), while the link itself stays visible, + // icon-only. + cy.contains("span.label", "Planning").should("exist").and("not.be.visible"); + cy.get("nav a[title='Planning']").should("be.visible"); + + cy.reload(); + cy.get(".app-sidebar").should("have.class", "collapsed"); + + cy.get(".app-sidebar__collapse-toggle").click(); + cy.get(".app-sidebar").should("not.have.class", "collapsed"); + cy.contains("nav a", "Planning").should("be.visible"); + }); });