salix-front/test/cypress/integration/invoiceIn/invoiceInVat.spec.js

51 lines
1.7 KiB
JavaScript
Raw Normal View History

2023-11-09 09:29:28 +00:00
/// <reference types="cypress" />
describe('InvoiceInVat', () => {
const thirdRow = 'tbody > :nth-child(3)';
const firstLineVat = 'tbody > :nth-child(1) > :nth-child(4)';
const dialogInputs = '.q-dialog label input';
const dialogBtns = '.q-dialog button';
2024-04-19 14:15:10 +00:00
const acrossInput =
':nth-child(1) > .q-td.q-table--col-auto-width > .q-field > .q-field__inner > .q-field__control > :nth-child(2) > .default-icon';
2023-11-09 09:29:28 +00:00
const randomInt = Math.floor(Math.random() * 100);
beforeEach(() => {
cy.login('developer');
cy.visit(`/#/invoice-in/1/vat`);
});
2024-04-19 14:15:10 +00:00
it('should edit the sage iva', () => {
2023-11-09 09:29:28 +00:00
cy.selectOption(firstLineVat, 'H.P. IVA 21% CEE');
cy.saveCard();
cy.visit(`/#/invoice-in/1/vat`);
cy.getValue(firstLineVat).should('equal', '8');
2023-11-09 09:29:28 +00:00
});
it('should add a new row', () => {
cy.addRow();
cy.fillRow(thirdRow, [true, 2000000001, 30, 'H.P. IVA 10']);
cy.saveCard();
cy.get('.q-notification__message').should('have.text', 'Data saved');
});
it('should remove the first line', () => {
2024-05-14 11:00:03 +00:00
cy.removeRow(2);
2023-11-09 09:29:28 +00:00
});
it('should throw an error if there are fields undefined', () => {
2024-04-19 14:15:10 +00:00
cy.get(acrossInput).click();
2023-11-09 09:29:28 +00:00
cy.get(dialogBtns).eq(2).click();
cy.get('.q-notification__message').should('have.text', "The code can't be empty");
});
it('should correctly handle expense addition', () => {
2024-04-19 14:15:10 +00:00
cy.get(acrossInput).click();
2023-11-09 09:29:28 +00:00
cy.get(dialogInputs).eq(0).type(randomInt);
cy.get(dialogInputs).eq(1).click();
cy.get(dialogInputs).eq(1).type('This is a dummy expense');
cy.get(dialogBtns).eq(2).click();
cy.get('.q-notification__message').should('have.text', 'Data saved');
});
});