From 20d2cd70906058c20875ef3de5a3aa438bde8173 Mon Sep 17 00:00:00 2001 From: Yisroel Baum Date: Fri, 31 Jul 2026 11:13:18 +0300 Subject: [PATCH] test set order failure --- frontend/rabbi_gerzi/cypress/e2e/media.cy.ts | 29 ++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/frontend/rabbi_gerzi/cypress/e2e/media.cy.ts b/frontend/rabbi_gerzi/cypress/e2e/media.cy.ts index cbbcdc8..0573764 100644 --- a/frontend/rabbi_gerzi/cypress/e2e/media.cy.ts +++ b/frontend/rabbi_gerzi/cypress/e2e/media.cy.ts @@ -238,6 +238,35 @@ describe('media page sets', () => { cy.resetDb() }) + it('preserves set order when saving fails', () => { + cy.resetDb() + loginAsAdmin() + cy.visit('/media') + cy.intercept('PUT', /\/api\/sets\/order$/, { + statusCode: 500, + body: { error: 'Unexpected failure' }, + }).as('reorderSets') + + cy.contains('[data-cy="media-set-card"]', 'Daily Learning') + .within(() => { + cy.get('[data-cy="media-set-move-up"]').click() + }) + cy.wait('@reorderSets') + + cy.get('[data-cy="media-set-order-error"]') + .should('be.visible') + .and('contain.text', 'Could not save set order') + cy.get('[data-cy="media-set-order-status"]').should('not.exist') + cy.get('[data-cy="media-set-card"]') + .eq(0) + .should('contain.text', 'Baderech HaAvodah') + cy.get('[data-cy="media-set-card"]') + .eq(1) + .should('contain.text', 'Daily Learning') + + cy.resetDb() + }) + it('creates a set from the logged-in media page modal', () => { loginAsAdmin() cy.visit('/media')