feat: refs #8599 modified tests to be more complete and added new ones
gitea/salix-front/pipeline/pr-dev This commit looks good
Details
gitea/salix-front/pipeline/pr-dev This commit looks good
Details
This commit is contained in:
parent
e6f6577fc1
commit
6f2d8d0a93
|
@ -1,6 +1,14 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('InvoiceOut list', () => {
|
||||
const serial = 'Española rapida';
|
||||
const columnCheckbox =
|
||||
'.bg-header > :nth-child(1) > .q-checkbox > .q-checkbox__inner';
|
||||
const firstRowDescriptor =
|
||||
'tbody > :nth-child(1) > [data-col-field="clientFk"] > .no-padding > .link';
|
||||
const firstRowCheckbox =
|
||||
'tbody > :nth-child(1) > :nth-child(1) > .q-checkbox > .q-checkbox__inner ';
|
||||
const summaryPopupIcon = '.header > :nth-child(2) > .q-btn__content > .q-icon';
|
||||
const filterBtn = '.q-scrollarea__content > .q-btn--standard > .q-btn__content';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
|
@ -9,18 +17,27 @@ describe('InvoiceOut list', () => {
|
|||
cy.typeSearchbar('{enter}');
|
||||
});
|
||||
|
||||
it('should search and filter an invoice and enter to the summary', () => {
|
||||
cy.typeSearchbar('1{enter}');
|
||||
cy.get('.q-virtual-scroll__content > :nth-child(2) > :nth-child(7)').click();
|
||||
cy.get('.header > a.q-btn > .q-btn__content').click();
|
||||
cy.typeSearchbar('{enter}');
|
||||
cy.dataCy('InvoiceOutFilterAmountBtn').find('input').type('8.88{enter}');
|
||||
it('should download one pdf', () => {
|
||||
cy.get(firstRowCheckbox).click();
|
||||
cy.dataCy('InvoiceOutDownloadPdfBtn').click();
|
||||
});
|
||||
|
||||
it('should download all pdfs', () => {
|
||||
cy.get('.bg-header > :nth-child(1) > .q-checkbox > .q-checkbox__inner').click();
|
||||
it('should download all pdfs, then open the descriptor', () => {
|
||||
cy.get(columnCheckbox).click();
|
||||
cy.dataCy('InvoiceOutDownloadPdfBtn').click();
|
||||
cy.get('.bg-header > :nth-child(1) > .q-checkbox > .q-checkbox__inner').click();
|
||||
});
|
||||
|
||||
it('should open the client descriptor', () => {
|
||||
cy.get(firstRowDescriptor).click();
|
||||
cy.get(summaryPopupIcon).click();
|
||||
});
|
||||
|
||||
it('should create a manual invoice and enter to its summary', () => {
|
||||
cy.dataCy('vnTableCreateBtn').click();
|
||||
cy.dataCy('InvoiceOutCreateTicketinput').type(8);
|
||||
cy.selectOption('[data-cy="InvoiceOutCreateSerialSelect"]', serial);
|
||||
cy.dataCy('FormModelPopup_save').click();
|
||||
cy.checkNotification('Data created');
|
||||
});
|
||||
|
||||
it('should give an error when manual invoicing a ticket that is already invoiced', () => {
|
||||
|
@ -31,11 +48,10 @@ describe('InvoiceOut list', () => {
|
|||
cy.checkNotification('This ticket is already invoiced');
|
||||
});
|
||||
|
||||
it('should create a manual invoice and enter to its summary', () => {
|
||||
cy.dataCy('vnTableCreateBtn').click();
|
||||
cy.dataCy('InvoiceOutCreateTicketinput').type(8);
|
||||
cy.selectOption('[data-cy="InvoiceOutCreateSerialSelect"]', serial);
|
||||
cy.dataCy('FormModelPopup_save').click();
|
||||
cy.checkNotification('Data created');
|
||||
it('should filter the results by client ID, then check the first result is correct', () => {
|
||||
cy.dataCy('Customer ID_input').type('1103');
|
||||
cy.get(filterBtn).click();
|
||||
cy.get(firstRowDescriptor).click();
|
||||
cy.get('.q-item > .q-item__label').should('include.text', '1103');
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,11 +1,30 @@
|
|||
/// <reference types="cypress" />
|
||||
describe('InvoiceOut negative bases', () => {
|
||||
const clientDescriptor =
|
||||
':nth-child(1) > [data-col-field="clientId"] > .no-padding > .link';
|
||||
const ticketDescriptor =
|
||||
':nth-child(1) > [data-col-field="ticketFk"] > .no-padding > .link';
|
||||
const workerDescriptor =
|
||||
':nth-child(1) > [data-col-field="workerName"] > .no-padding > .link';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/invoice-out/negative-bases`);
|
||||
});
|
||||
|
||||
it('should open the posible descriptors', () => {
|
||||
cy.get(clientDescriptor).click();
|
||||
cy.get('.descriptor').should('be.visible');
|
||||
cy.get('.q-item > .q-item__label').should('include.text', '1101');
|
||||
cy.get(ticketDescriptor).click();
|
||||
cy.get('.descriptor').should('be.visible');
|
||||
cy.get('.q-item > .q-item__label').should('include.text', '23');
|
||||
cy.get(workerDescriptor).click();
|
||||
cy.get('.descriptor').should('be.visible');
|
||||
cy.get('.q-item > .q-item__label').should('include.text', '18');
|
||||
});
|
||||
|
||||
it('should filter and download as CSV', () => {
|
||||
cy.get('input[name="ticketFk"]').type('23{enter}');
|
||||
cy.get('#subToolbar > .q-btn').click();
|
||||
|
|
|
@ -5,25 +5,54 @@ describe('InvoiceOut summary', () => {
|
|||
Type: { val: 'Error in customer data', type: 'select' },
|
||||
};
|
||||
|
||||
const firstTicketRowDescriptor = 'tbody > :nth-child(1) > :nth-child(1) > .q-btn';
|
||||
const firstClientRowDescriptor =
|
||||
'tbody > :nth-child(1) > :nth-child(2) > .q-btn > .q-btn__content';
|
||||
const toCustomerSummary = '[href="#/customer/1101"]';
|
||||
const toTicketList = '[href="#/ticket/list?table={%22refFk%22:%22T1111111%22}"]';
|
||||
|
||||
beforeEach(() => {
|
||||
cy.viewport(1920, 1080);
|
||||
cy.login('developer');
|
||||
cy.visit(`/#/invoice-out/list`);
|
||||
cy.visit(`/#/invoice-out/1/summary`);
|
||||
});
|
||||
|
||||
it('should generate the invoice PDF', () => {
|
||||
cy.typeSearchbar('T1111111{enter}');
|
||||
cy.dataCy('descriptor-more-opts').click();
|
||||
cy.get('.q-menu > .q-list > :nth-child(6)').click();
|
||||
cy.dataCy('VnConfirm_confirm').click();
|
||||
cy.checkNotification('The invoice PDF document has been regenerated');
|
||||
it('open the descriptors', () => {
|
||||
cy.get(firstTicketRowDescriptor).click();
|
||||
cy.get('.descriptor').should('be.visible');
|
||||
cy.get('.q-item > .q-item__label').should('include.text', '1');
|
||||
cy.get(firstClientRowDescriptor).click();
|
||||
cy.get('.descriptor').should('be.visible');
|
||||
cy.get('.q-item > .q-item__label').should('include.text', '1101');
|
||||
});
|
||||
it('should refund the invoice ', () => {
|
||||
|
||||
it('should open the client summary and the ticket list', () => {
|
||||
cy.get(toCustomerSummary).click();
|
||||
cy.get('.descriptor').should('be.visible');
|
||||
cy.get('.q-item > .q-item__label').should('include.text', '1101');
|
||||
});
|
||||
|
||||
it('should open the ticket list', () => {
|
||||
cy.get(toTicketList).click();
|
||||
cy.get('.descriptor').should('be.visible');
|
||||
cy.get('[data-cy="vnFilterPanelChip"]').should('include.text', 'T1111111');
|
||||
});
|
||||
|
||||
it('should transfer the invoice ', () => {
|
||||
cy.typeSearchbar('T1111111{enter}');
|
||||
cy.dataCy('descriptor-more-opts').click();
|
||||
cy.get('.q-menu > .q-list > :nth-child(7)').click();
|
||||
cy.get('#q-portal--menu--3 > .q-menu > .q-list > :nth-child(2)').click();
|
||||
cy.checkNotification('The following refund ticket have been created');
|
||||
cy.get('.q-menu > .q-list > :nth-child(1)').click();
|
||||
cy.fillInForm(transferInvoice);
|
||||
cy.get('.q-mt-lg > .q-btn').click();
|
||||
cy.checkNotification('Transferred invoice');
|
||||
});
|
||||
|
||||
it('should send the invoice', () => {
|
||||
cy.dataCy('descriptor-more-opts').click();
|
||||
cy.get('.q-menu > .q-list > :nth-child(3)').click();
|
||||
cy.get('#q-portal--menu--3 > .q-menu > .q-list > :nth-child(1)').click();
|
||||
cy.get('.q-btn--unelevated').click();
|
||||
cy.checkNotification('Notification sent');
|
||||
});
|
||||
|
||||
it('should delete an invoice ', () => {
|
||||
|
@ -33,12 +62,25 @@ describe('InvoiceOut summary', () => {
|
|||
cy.dataCy('VnConfirm_confirm').click();
|
||||
cy.checkNotification('InvoiceOut deleted');
|
||||
});
|
||||
it('should transfer the invoice ', () => {
|
||||
cy.typeSearchbar('T1111111{enter}');
|
||||
|
||||
it('shpuld book the invoice', () => {
|
||||
cy.dataCy('descriptor-more-opts').click();
|
||||
cy.get('.q-menu > .q-list > :nth-child(1)').click();
|
||||
cy.fillInForm(transferInvoice);
|
||||
cy.get('.q-mt-lg > .q-btn').click();
|
||||
cy.checkNotification('Transferred invoice');
|
||||
cy.get('.q-menu > .q-list > :nth-child(5)').click();
|
||||
cy.dataCy('VnConfirm_confirm').click();
|
||||
cy.checkNotification('InvoiceOut booked');
|
||||
});
|
||||
|
||||
it('should generate the invoice PDF', () => {
|
||||
cy.dataCy('descriptor-more-opts').click();
|
||||
cy.get('.q-menu > .q-list > :nth-child(6)').click();
|
||||
cy.dataCy('VnConfirm_confirm').click();
|
||||
cy.checkNotification('The invoice PDF document has been regenerated');
|
||||
});
|
||||
|
||||
it('should refund the invoice ', () => {
|
||||
cy.dataCy('descriptor-more-opts').click();
|
||||
cy.get('.q-menu > .q-list > :nth-child(7)').click();
|
||||
cy.get('#q-portal--menu--3 > .q-menu > .q-list > :nth-child(2)').click();
|
||||
cy.checkNotification('The following refund ticket have been created');
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue