From 0263af793850a26c12aecaad5e66bc0656aeec0f Mon Sep 17 00:00:00 2001 From: Javier Segarra Date: Sun, 2 Mar 2025 23:58:36 +0100 Subject: [PATCH 01/16] test: refs #7356 init each missing e2e --- .../integration/ticket/ticketBasicData.spec.js | 12 ++++++++++++ .../integration/ticket/ticketComponents.spec.js | 11 +++++++++++ .../cypress/integration/ticket/ticketPackage.spec.js | 12 ++++++++++++ .../integration/ticket/ticketPictures.spec.js | 11 +++++++++++ .../integration/ticket/ticketSaleTracking.spec.js | 12 ++++++++++++ .../cypress/integration/ticket/ticketService.spec.js | 12 ++++++++++++ test/cypress/integration/ticket/ticketSms.spec.js | 12 ++++++++++++ .../integration/ticket/ticketTracking.spec.js | 12 ++++++++++++ test/cypress/integration/ticket/ticketVolume.spec.js | 12 ++++++++++++ 9 files changed, 106 insertions(+) create mode 100644 test/cypress/integration/ticket/ticketBasicData.spec.js create mode 100644 test/cypress/integration/ticket/ticketComponents.spec.js create mode 100644 test/cypress/integration/ticket/ticketPackage.spec.js create mode 100644 test/cypress/integration/ticket/ticketPictures.spec.js create mode 100644 test/cypress/integration/ticket/ticketSaleTracking.spec.js create mode 100644 test/cypress/integration/ticket/ticketService.spec.js create mode 100644 test/cypress/integration/ticket/ticketSms.spec.js create mode 100644 test/cypress/integration/ticket/ticketTracking.spec.js create mode 100644 test/cypress/integration/ticket/ticketVolume.spec.js diff --git a/test/cypress/integration/ticket/ticketBasicData.spec.js b/test/cypress/integration/ticket/ticketBasicData.spec.js new file mode 100644 index 000000000..ac57e47e6 --- /dev/null +++ b/test/cypress/integration/ticket/ticketBasicData.spec.js @@ -0,0 +1,12 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/basic-data'); + }); + + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketComponents.spec.js b/test/cypress/integration/ticket/ticketComponents.spec.js new file mode 100644 index 000000000..f6107486c --- /dev/null +++ b/test/cypress/integration/ticket/ticketComponents.spec.js @@ -0,0 +1,11 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/request'); + }); + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketPackage.spec.js b/test/cypress/integration/ticket/ticketPackage.spec.js new file mode 100644 index 000000000..1f54af5b1 --- /dev/null +++ b/test/cypress/integration/ticket/ticketPackage.spec.js @@ -0,0 +1,12 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/request'); + }); + + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketPictures.spec.js b/test/cypress/integration/ticket/ticketPictures.spec.js new file mode 100644 index 000000000..a2f4ad506 --- /dev/null +++ b/test/cypress/integration/ticket/ticketPictures.spec.js @@ -0,0 +1,11 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/picture'); + }); + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketSaleTracking.spec.js b/test/cypress/integration/ticket/ticketSaleTracking.spec.js new file mode 100644 index 000000000..30ac79e0f --- /dev/null +++ b/test/cypress/integration/ticket/ticketSaleTracking.spec.js @@ -0,0 +1,12 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/sale-tracking'); + }); + + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketService.spec.js b/test/cypress/integration/ticket/ticketService.spec.js new file mode 100644 index 000000000..35a126fc8 --- /dev/null +++ b/test/cypress/integration/ticket/ticketService.spec.js @@ -0,0 +1,12 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/service'); + }); + + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketSms.spec.js b/test/cypress/integration/ticket/ticketSms.spec.js new file mode 100644 index 000000000..69a48b341 --- /dev/null +++ b/test/cypress/integration/ticket/ticketSms.spec.js @@ -0,0 +1,12 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/sms'); + }); + + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketTracking.spec.js b/test/cypress/integration/ticket/ticketTracking.spec.js new file mode 100644 index 000000000..1f54af5b1 --- /dev/null +++ b/test/cypress/integration/ticket/ticketTracking.spec.js @@ -0,0 +1,12 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/request'); + }); + + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); diff --git a/test/cypress/integration/ticket/ticketVolume.spec.js b/test/cypress/integration/ticket/ticketVolume.spec.js new file mode 100644 index 000000000..7b3d890b8 --- /dev/null +++ b/test/cypress/integration/ticket/ticketVolume.spec.js @@ -0,0 +1,12 @@ +/// +describe('TicketRequest', () => { + beforeEach(() => { + cy.login('developer'); + cy.viewport(1920, 1080); + cy.visit('/#/ticket/31/volume'); + }); + + it('Should load layout', () => { + cy.get('.q-page').should('be.visible'); + }); +}); From aebd9ea83cdf21b310977906a0aaa585817e034e Mon Sep 17 00:00:00 2001 From: Javier Segarra Date: Mon, 24 Mar 2025 03:24:10 +0100 Subject: [PATCH 02/16] fix: refs #7356 update validation logic and enhance Cypress tests for ticket components --- src/composables/useValidator.js | 3 +- src/pages/Item/Card/ItemDescriptorProxy.vue | 2 +- src/pages/Ticket/Card/TicketVolume.vue | 2 +- src/pages/Zone/Card/ZoneDescriptorProxy.vue | 2 +- .../ticket/ticketComponents.spec.js | 60 ++++++++++++++++++- .../integration/ticket/ticketPackage.spec.js | 14 ++++- .../integration/ticket/ticketPictures.spec.js | 13 +++- .../ticket/ticketSaleTracking.spec.js | 37 +++++++++++- .../integration/ticket/ticketService.spec.js | 18 +++++- .../integration/ticket/ticketVolume.spec.js | 19 +++++- 10 files changed, 153 insertions(+), 17 deletions(-) diff --git a/src/composables/useValidator.js b/src/composables/useValidator.js index 7a7032608..ae6c47d91 100644 --- a/src/composables/useValidator.js +++ b/src/composables/useValidator.js @@ -78,7 +78,8 @@ export function useValidator() { if (min >= 0) if (Math.floor(value) < min) return t('inputMin', { value: min }); }, - custom: (value) => validation.bindedFunction(value) || 'Invalid value', + custom: (value) => + eval(`(${validation.bindedFunction})`)(value) || 'Invalid value', }; }; diff --git a/src/pages/Item/Card/ItemDescriptorProxy.vue b/src/pages/Item/Card/ItemDescriptorProxy.vue index f686e8221..6e1f6d71f 100644 --- a/src/pages/Item/Card/ItemDescriptorProxy.vue +++ b/src/pages/Item/Card/ItemDescriptorProxy.vue @@ -22,7 +22,7 @@ const $props = defineProps({ });