From 8845f783834997cb7cf7492adaaaf5238765aaf1 Mon Sep 17 00:00:00 2001 From: alexm Date: Tue, 23 Jul 2024 12:23:31 +0200 Subject: [PATCH] test: refs #7615 add test to setDeleted --- .../methods/ticket/specs/setDeleted.spec.js | 47 ++++++++++++++----- 1 file changed, 34 insertions(+), 13 deletions(-) diff --git a/modules/ticket/back/methods/ticket/specs/setDeleted.spec.js b/modules/ticket/back/methods/ticket/specs/setDeleted.spec.js index ed9347714e..782c31c021 100644 --- a/modules/ticket/back/methods/ticket/specs/setDeleted.spec.js +++ b/modules/ticket/back/methods/ticket/specs/setDeleted.spec.js @@ -76,21 +76,42 @@ describe('ticket setDeleted()', () => { } }); - it('should show error trying to delete a ticket with a refund', async() => { - const tx = await models.Ticket.beginTransaction({}); - let error; - try { - const options = {transaction: tx}; + describe('ticket with refund setDeleted()', () => { + it('should show error trying to delete a ticket with a refund', async() => { + const tx = await models.Ticket.beginTransaction({}); + let error; + try { + const options = {transaction: tx}; - const ticketId = 8; - await models.Ticket.setDeleted(ctx, ticketId, options); + const ticketId = 8; + await models.Ticket.setDeleted(ctx, ticketId, options); - await tx.rollback(); - } catch (e) { - await tx.rollback(); - error = e; - } + await tx.rollback(); + } catch (e) { + await tx.rollback(); + error = e; + } - expect(error.message).toContain('Tickets with associated refunds'); + expect(error.message).toContain('Tickets with associated refunds'); + }); + + it('should delete a ticket with a refund if ticket refund is deleted', async() => { + const tx = await models.Ticket.beginTransaction({}); + try { + const options = {transaction: tx}; + + const ticketId = 8; + const ticketRefundId = 24; + await models.Ticket.updateAll({id: ticketRefundId}, {isDeleted: true}, options); + await models.Ticket.setDeleted(ctx, ticketId, options); + + await tx.rollback(); + } catch (e) { + await tx.rollback(); + error = e; + } + + expect(error.message).not.toContain('Tickets with associated refunds'); + }); }); });