diff --git a/import_e2e.zip b/import_e2e.zip
new file mode 100644
index 000000000..9359ce9ae
Binary files /dev/null and b/import_e2e.zip differ
diff --git a/src/filters/index.js b/src/filters/index.js
index a92d2eb07..cefe8b0ed 100644
--- a/src/filters/index.js
+++ b/src/filters/index.js
@@ -18,6 +18,7 @@ import parsePhone from './parsePhone';
import isDialogOpened from './isDialogOpened';
export {
+ isDialogOpened,
getUpdatedValues,
getDifferences,
isDialogOpened,
diff --git a/src/pages/Customer/Card/CustomerUnpaid.vue b/src/pages/Customer/Card/CustomerUnpaid.vue
index 18b12c60c..e6820cba5 100644
--- a/src/pages/Customer/Card/CustomerUnpaid.vue
+++ b/src/pages/Customer/Card/CustomerUnpaid.vue
@@ -2,6 +2,7 @@
import { ref } from 'vue';
import { useI18n } from 'vue-i18n';
import { useRoute } from 'vue-router';
+
import VnInputDate from 'components/common/VnInputDate.vue';
import FormModel from 'components/FormModel.vue';
import FetchData from 'components/FetchData.vue';
@@ -38,45 +39,43 @@ const filterClientFindOne = {
}
"
/>
-
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
- €
-
-
-
-
-
+
+
+
+
+
+
+ €
+
+
+
+
diff --git a/test/cypress/integration/client/clientBasicData.spec.js b/test/cypress/integration/client/clientBasicData.spec.js
index efaad33c2..bb014127e 100644
--- a/test/cypress/integration/client/clientBasicData.spec.js
+++ b/test/cypress/integration/client/clientBasicData.spec.js
@@ -5,6 +5,7 @@ describe('Client basic data', () => {
cy.login('developer');
cy.visit('#/customer/1102/basic-data');
});
+
it('Should load layout', () => {
cy.get('.q-card').should('be.visible');
cy.dataCy('customerPhone').filter('input').should('be.visible');
diff --git a/test/cypress/integration/ticket/01_list_sales.spec.js b/test/cypress/integration/ticket/01_list_sales.spec.js
new file mode 100644
index 000000000..a1ba588ee
--- /dev/null
+++ b/test/cypress/integration/ticket/01_list_sales.spec.js
@@ -0,0 +1,18 @@
+describe.skip('Ticket List sale path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should confirm the first ticket sale contains the colour tag', async () => {});
+ it('should confirm the first sale contains the price', async () => {});
+ it('should confirm the first sale contains the discount', async () => {});
+ it('should confirm the first sale contains the total import', async () => {});
+ it('should add an empty item to the sale list', async () => {});
+ it('should select a valid item to be added as the second item in the sales list', async () => {});
+ it('should update the description of the new sale', async () => {});
+ it('should add a third empty item to the sale list', async () => {});
+ it('should select the 2nd and 3th item and delete both', async () => {});
+ it(`should verify there's only 1 single line remaining`, async () => {});
+});
diff --git a/test/cypress/integration/ticket/01_observations.spec.js b/test/cypress/integration/ticket/01_observations.spec.js
new file mode 100644
index 000000000..c187a63a3
--- /dev/null
+++ b/test/cypress/integration/ticket/01_observations.spec.js
@@ -0,0 +1,11 @@
+describe.skip('Ticket Create notes path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should create a new note', async () => {});
+ it('should confirm the note is the expected one', async () => {});
+ it('should delete the note', async () => {});
+});
diff --git a/test/cypress/integration/ticket/02_edit_sale.spec.js b/test/cypress/integration/ticket/02_edit_sale.spec.js
new file mode 100644
index 000000000..f3d2aa3a6
--- /dev/null
+++ b/test/cypress/integration/ticket/02_edit_sale.spec.js
@@ -0,0 +1,57 @@
+describe.skip('Ticket Edit sale path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it(`should click on the first sale claim icon to navigate over there`, async () => {});
+ it('should navigate to the tickets index', async () => {});
+ it(`should search for a ticket and then navigate to it's sales`, async () => {});
+ it(`should set the ticket as libre`, async () => {});
+ it(`should check it's state is libre now`, async () => {});
+ it(`should set the ticket as OK`, async () => {});
+ it(`should check it's state is OK now`, async () => {});
+ it(`should check the zoomed image isn't present`, async () => {});
+ it(`should click on the thumbnail image of the 1st sale and see the zoomed image`, async () => {});
+ it(`should click on the zoomed image to close it`, async () => {});
+ it(`should click on the first sale ID making now the item descriptor visible`, async () => {});
+ it(`should click on the descriptor image of the 1st sale and see the zoomed image`, async () => {});
+ it(`should now click on the zoomed image to close it`, async () => {});
+ it(`should click on the summary icon of the item-descriptor to access to the item summary`, async () => {});
+ it('should return to ticket sales section', async () => {});
+ it('should remove 1 from the first sale quantity', async () => {});
+ it('should update the price', async () => {});
+ it('should confirm the price have been updated', async () => {});
+ it('should confirm the total price for that item have been updated', async () => {});
+ it('should update the discount', async () => {});
+ it('should confirm the discount have been updated', async () => {});
+ it('should confirm the total import for that item have been updated', async () => {});
+ it('should recalculate price of sales', async () => {});
+ it('should log in as salesAssistant and navigate to ticket sales', async () => {});
+ it('should select the first sale and create a refund with warehouse', async () => {});
+ it('should select the first sale and create a refund without warehouse', async () => {});
+ it('should show error trying to delete a ticket with a refund', async () => {});
+ it('should select the third sale and create a claim of it', async () => {});
+ it('should search for a ticket then access to the sales section', async () => {});
+ it('should select the third sale and delete it', async () => {});
+ it(`should confirm the third sale was deleted`, async () => {});
+ it('should select the second sale and transfer it to a valid ticket', async () => {});
+ it('should confirm the transfered line is the correct one', async () => {});
+ it('should confirm the transfered quantity is the correct one', async () => {});
+ it('should go back to the original ticket sales section', async () => {});
+ it(`should confirm the original ticket has still three lines`, async () => {});
+ it(`should confirm the second sale quantity is now half of it's original value after the transfer`, async () => {});
+ it('should go back to the receiver ticket sales section', async () => {});
+ it('should transfer the sale back to the original ticket', async () => {});
+ it('should confirm the original ticket received the line', async () => {});
+ it(`should throw an error when attempting to create a ticket for an inactive client`, async () => {});
+ it('should go now to the ticket sales section of an active, not frozen client', async () => {});
+ it(`should select all sales, tranfer them to a new ticket and delete the sender ticket as it would've been left empty`, async () => {});
+ it('should confirm the new ticket received the line', async () => {});
+ it('should check the first sale reserved icon isnt visible', async () => {});
+ it('should mark the first sale as reserved', async () => {});
+ it('should unmark the first sale as reserved', async () => {});
+ it('should log in as Production role and go to a target ticket summary', async () => {});
+ it(`should check the ticket is deleted`, async () => {});
+});
diff --git a/test/cypress/integration/ticket/02_expeditions_and_log.spec.js b/test/cypress/integration/ticket/02_expeditions_and_log.spec.js
new file mode 100644
index 000000000..9fe6c02b2
--- /dev/null
+++ b/test/cypress/integration/ticket/02_expeditions_and_log.spec.js
@@ -0,0 +1,9 @@
+describe.skip('Ticket expeditions and log path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it(`should delete a former expedition and confirm the remaining expedition are the expected ones`, async () => {});
+});
diff --git a/test/cypress/integration/ticket/04_packages.spec.js b/test/cypress/integration/ticket/04_packages.spec.js
new file mode 100644
index 000000000..d771d29f1
--- /dev/null
+++ b/test/cypress/integration/ticket/04_packages.spec.js
@@ -0,0 +1,14 @@
+describe.skip('Ticket Create packages path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it(`should attempt create a new package but receive an error if package is blank`, async () => {});
+ it(`should delete the first package and receive and error to save a new one with blank quantity`, async () => {});
+ it(`should confirm the quantity input isn't invalid yet`, async () => {});
+ it(`should create a new package with correct data`, async () => {});
+ it(`should confirm the first select is the expected one`, async () => {});
+ it(`should confirm quantity is just a number and the string part was ignored by the imput number`, async () => {});
+});
diff --git a/test/cypress/integration/ticket/05_tracking_state.spec.js b/test/cypress/integration/ticket/05_tracking_state.spec.js
new file mode 100644
index 000000000..2ad58732d
--- /dev/null
+++ b/test/cypress/integration/ticket/05_tracking_state.spec.js
@@ -0,0 +1,26 @@
+describe.skip('Ticket Create new tracking state path', () => {
+ describe('as production', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should log into the ticket 1 tracking', async () => {});
+ it('should access to the create state view by clicking the create floating button', async () => {});
+ it(`should create a new state`, async () => {});
+ });
+ describe('as salesPerson', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should now log into the ticket 1 tracking', async () => {});
+ it('should now access to the create state view by clicking the create floating button', async () => {});
+ it(`should attemp to create an state for which salesPerson doesn't have permissions`, async () => {});
+ it(`should make sure the worker gets autocomplete uppon selecting the assigned state`, async () => {});
+ it(`should succesfully create a valid state`, async () => {});
+ });
+});
diff --git a/test/cypress/integration/ticket/06_basic_data_steps.spec.js b/test/cypress/integration/ticket/06_basic_data_steps.spec.js
new file mode 100644
index 000000000..65e5f0562
--- /dev/null
+++ b/test/cypress/integration/ticket/06_basic_data_steps.spec.js
@@ -0,0 +1,21 @@
+describe.skip('Ticket Edit basic data path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it(`should confirm the zone autocomplete is disabled unless your role is productionBoss`, async () => {});
+ it(`should now log as productionBoss to perform the rest of the tests`, async () => {});
+ it(`should confirm the zone autocomplete is enabled for the role productionBoss`, async () => {});
+ it(`should check the zone is for Gotham247`, async () => {});
+ it(`should edit the ticket agency then check there are no zones for it`, async () => {});
+ it(`should edit the ticket zone then check the agency is for the new zone`, async () => {});
+ it(`should click next`, async () => {});
+ it(`should have a price diference`, async () => {});
+ it(`should select a new reason for the changes made then click on finalize`, async () => {});
+ it(`should not find ticket`, async () => {});
+ it(`should split ticket without negatives`, async () => {});
+ it(`should new ticket have sale of old ticket`, async () => {});
+ it(`should old ticket have old date and agency`, async () => {});
+});
diff --git a/test/cypress/integration/ticket/08_components.spec.js b/test/cypress/integration/ticket/08_components.spec.js
new file mode 100644
index 000000000..98d409cb2
--- /dev/null
+++ b/test/cypress/integration/ticket/08_components.spec.js
@@ -0,0 +1,9 @@
+describe.skip('Ticket List components path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should confirm the total base is correct', async () => {});
+});
diff --git a/test/cypress/integration/ticket/09_weekly.spec.js b/test/cypress/integration/ticket/09_weekly.spec.js
new file mode 100644
index 000000000..bbecdc6d5
--- /dev/null
+++ b/test/cypress/integration/ticket/09_weekly.spec.js
@@ -0,0 +1,22 @@
+describe.skip('Ticket descriptor path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should count the amount of tickets in the turns section', async () => {});
+ it('should go back to the ticket index then search and access a ticket summary', async () => {});
+ it('should add the ticket to thursday turn using the descriptor more menu', async () => {});
+ it('should again click on the Tickets button of the top bar menu', async () => {});
+ it('should confirm the ticket 33 was added to thursday', async () => {});
+ it('should click on the Tickets button of the top bar menu once more', async () => {});
+ it('should now search for the ticket 33', async () => {});
+ it('should add the ticket to saturday turn using the descriptor more menu', async () => {});
+ it('should click on the Tickets button of the top bar menu once again', async () => {});
+ it('should confirm the ticket 33 was added on saturday', async () => {});
+ it('should now search for the weekly ticket 33', async () => {});
+ it('should delete the weekly ticket 33', async () => {});
+ it('should confirm the sixth weekly ticket was deleted', async () => {});
+ it('should update the agency then remove it afterwards', async () => {});
+});
diff --git a/test/cypress/integration/ticket/10_request.spec.js b/test/cypress/integration/ticket/10_request.spec.js
new file mode 100644
index 000000000..f70e2598b
--- /dev/null
+++ b/test/cypress/integration/ticket/10_request.spec.js
@@ -0,0 +1,16 @@
+describe.skip('Ticket purchase request path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should add a new request', async () => {});
+ it('should have been redirected to the request index', async () => {});
+ it(`should edit the third request quantity as it's state is still new`, async () => {});
+ it('should check the new request was added', async () => {});
+ it(`should check the first request can't be edited as its state is different to new`, async () => {});
+ it(`should check the second request can't be edited as its state is different to new`, async () => {});
+ it('should delete the added request', async () => {});
+ it('should check the request was deleted', async () => {});
+});
diff --git a/test/cypress/integration/ticket/12_descriptor.spec.js b/test/cypress/integration/ticket/12_descriptor.spec.js
new file mode 100644
index 000000000..a34d209b5
--- /dev/null
+++ b/test/cypress/integration/ticket/12_descriptor.spec.js
@@ -0,0 +1,48 @@
+describe.skip('Ticket descriptor path', () => {
+ describe('Delete ticket', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should search for an specific ticket', async () => {});
+ it(`should update the shipped hour using the descriptor menu`, async () => {});
+ it(`should confirm the ticket descriptor shows the correct shipping hour`, async () => {});
+ it('should delete the ticket using the descriptor menu', async () => {});
+ it('should have been relocated to the ticket index', async () => {});
+ it(`should search for the deleted ticket and check the deletedTicket icon and it's date`, async () => {});
+ });
+ describe('Restore ticket', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should restore the ticket using the descriptor menu', async () => {});
+ });
+ describe('Make invoice', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should login as administrative role then search for a ticket', async () => {});
+ it(`should make sure the ticket doesn't have an invoiceOutFk yet`, async () => {});
+ it('should invoice the ticket using the descriptor menu', async () => {});
+ it(`should make sure the ticket summary have an invoiceOutFk`, async () => {});
+ it(`should regenerate the invoice using the descriptor menu`, async () => {});
+ });
+ describe('SMS', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should send the payment SMS using the descriptor menu', async () => {});
+ it('should send the import SMS using the descriptor menu', async () => {});
+ });
+});
diff --git a/test/cypress/integration/ticket/13_services.spec.js b/test/cypress/integration/ticket/13_services.spec.js
new file mode 100644
index 000000000..b4c79d8c4
--- /dev/null
+++ b/test/cypress/integration/ticket/13_services.spec.js
@@ -0,0 +1,32 @@
+describe.skip('Ticket services path', () => {
+ describe('as employee', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should log in as employee, search for an invoice and get to services', async () => {});
+ it('should find the add descripton button disabled for this user role', async () => {});
+ it('should receive an error if you attempt to save a service without access rights', async () => {});
+ });
+ describe('as administrative', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should navigate to the services of a target ticket', async () => {});
+ it('should click on the add button to prepare the form to create a new service', async () => {});
+ it('should receive an error if you attempt to save it with empty fields', async () => {});
+ it('should click on the add new service type to open the dialog', async () => {});
+ it('should receive an error if service type is empty on submit', async () => {});
+ it('should create a new service type then add price then create the service', async () => {});
+ it('should confirm the service description was created correctly', async () => {});
+ it('should confirm the service quantity was created correctly', async () => {});
+ it('should confirm the service price was created correctly', async () => {});
+ it('should delete the service', async () => {});
+ it(`should confirm the service was removed`, async () => {});
+ });
+});
diff --git a/test/cypress/integration/ticket/14_create_ticket.spec.js b/test/cypress/integration/ticket/14_create_ticket.spec.js
new file mode 100644
index 000000000..3d2fa39cb
--- /dev/null
+++ b/test/cypress/integration/ticket/14_create_ticket.spec.js
@@ -0,0 +1,15 @@
+describe.skip('Ticket create path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should open the new ticket form', async () => {});
+ it('should succeed to create a ticket', async () => {});
+ it('should check the url is now the summary of the ticket', async () => {});
+ it('should again open the new ticket form', async () => {});
+ it('should succeed to create another ticket for the same client', async () => {});
+ it('should check the url is now the summary of the created ticket', async () => {});
+ it('should delete the current ticket', async () => {});
+});
diff --git a/test/cypress/integration/ticket/15_create_ticket_from_client.spec.js b/test/cypress/integration/ticket/15_create_ticket_from_client.spec.js
new file mode 100644
index 000000000..e96a450c7
--- /dev/null
+++ b/test/cypress/integration/ticket/15_create_ticket_from_client.spec.js
@@ -0,0 +1,9 @@
+describe.skip('Ticket create from client path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should create simple ticket and check if the client details are the expected ones', async () => {});
+});
diff --git a/test/cypress/integration/ticket/16_summary.spec.js b/test/cypress/integration/ticket/16_summary.spec.js
new file mode 100644
index 000000000..984e4c44e
--- /dev/null
+++ b/test/cypress/integration/ticket/16_summary.spec.js
@@ -0,0 +1,19 @@
+describe.skip('Ticket Summary path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should navigate to the target ticket summary section', async () => {});
+ it(`should display details from the ticket and it's client on the top of the header`, async () => {});
+ it('should display ticket details', async () => {});
+ it('should display delivery details', async () => {});
+ it('should display the ticket total', async () => {});
+ it('should display the ticket line(s)', async () => {});
+ it(`should click on the first sale ID to make the item descriptor visible`, async () => {});
+ it(`should check the url for the item diary link of the descriptor is for the right item id`, async () => {});
+ it('should log in as production then navigate to the summary of the same ticket', async () => {});
+ it('should set the ticket state to OK using the top right button', async () => {});
+ it('should confirm the ticket state was updated', async () => {});
+});
diff --git a/test/cypress/integration/ticket/17_log.spec.js b/test/cypress/integration/ticket/17_log.spec.js
new file mode 100644
index 000000000..93203fc3c
--- /dev/null
+++ b/test/cypress/integration/ticket/17_log.spec.js
@@ -0,0 +1,10 @@
+describe.skip('Ticket log path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should navigate to the target ticket notes section', async () => {});
+ it('should create a new note for the test', async () => {});
+});
diff --git a/test/cypress/integration/ticket/18_index_payout.spec.js b/test/cypress/integration/ticket/18_index_payout.spec.js
new file mode 100644
index 000000000..c84305a95
--- /dev/null
+++ b/test/cypress/integration/ticket/18_index_payout.spec.js
@@ -0,0 +1,11 @@
+describe.skip('Ticket index payout path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should check the second ticket from a client and 1 of another', async () => {});
+ it('should search for tickets of the same client then open the payout form', async () => {});
+ it('should fill the company and bank to perform a payout and check a new balance line was entered', async () => {});
+});
diff --git a/test/cypress/integration/ticket/19_dms.spec.js b/test/cypress/integration/ticket/19_dms.spec.js
new file mode 100644
index 000000000..3984cdfd6
--- /dev/null
+++ b/test/cypress/integration/ticket/19_dms.spec.js
@@ -0,0 +1,12 @@
+describe.skip('Ticket DMS path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should import a document', async () => {});
+ it(`should check there's a listed document now`, async () => {});
+ it('should attempt to import an existing document on this ticket', async () => {});
+ it(`should check there's still one document`, async () => {});
+});
diff --git a/test/cypress/integration/ticket/20_moveExpedition.spec.js b/test/cypress/integration/ticket/20_moveExpedition.spec.js
new file mode 100644
index 000000000..72087c84e
--- /dev/null
+++ b/test/cypress/integration/ticket/20_moveExpedition.spec.js
@@ -0,0 +1,10 @@
+describe.skip('Ticket expeditions', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it(`should move one expedition to new ticket withoute route`, async () => {});
+ it(`should move one expedition to new ticket with route`, async () => {});
+});
diff --git a/test/cypress/integration/ticket/21_future.spec.js b/test/cypress/integration/ticket/21_future.spec.js
new file mode 100644
index 000000000..937b62e7b
--- /dev/null
+++ b/test/cypress/integration/ticket/21_future.spec.js
@@ -0,0 +1,9 @@
+describe.skip('Ticket Future path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should search with required data, check three last tickets and move to the future', async () => {});
+});
diff --git a/test/cypress/integration/ticket/22_advance.spec.js b/test/cypress/integration/ticket/22_advance.spec.js
new file mode 100644
index 000000000..efffdf9bf
--- /dev/null
+++ b/test/cypress/integration/ticket/22_advance.spec.js
@@ -0,0 +1,9 @@
+describe.skip('Ticket Advance path', () => {
+ beforeEach(() => {
+ const ticketId = 1;
+ cy.viewport(1280, 720);
+ cy.login('developer');
+ cy.visit(`/#/ticket/${ticketId}/boxing`);
+ });
+ it('should search with the required data, check the first ticket and move to the present', async () => {});
+});