/// describe('TicketList', () => { const firstRow = 'tbody.q-virtual-scroll__content tr:nth-child(1)'; beforeEach(() => { cy.login('developer'); cy.viewport(1920, 1080); cy.visit('/#/ticket/list'); cy.domContentLoad(); }); const searchResults = (search) => { if (search) cy.typeSearchbar().type(search); cy.dataCy('vn-searchbar').find('input').type('{enter}'); cy.dataCy('ticketListTable').should('exist'); cy.get(firstRow).should('exist'); }; it('should search results', () => { cy.dataCy('ticketListTable').should('not.exist'); cy.get('.q-field__control').should('exist'); searchResults(); }); it('should open ticket sales', () => { searchResults(); cy.window().then((win) => { cy.stub(win, 'open').as('windowOpen'); }); cy.get(firstRow).should('be.visible').find('.q-btn:first').click(); cy.get('@windowOpen').should('be.calledWithMatch', /\/ticket\/\d+\/sale/); }); it('should open ticket summary', () => { searchResults(); cy.get(firstRow).find('.q-btn:last').click(); cy.get('.summaryHeader').should('exist'); cy.get('.summaryBody').should('exist'); }); it('filter client and create ticket', () => { cy.intercept('GET', /\/api\/Tickets\/filter/).as('ticketSearchbar'); searchResults(); cy.wait('@ticketSearchbar').then(({ request }) => { const { query } = request; expect(query).to.have.property('from'); expect(query).to.have.property('to'); expect(query).to.not.have.property('clientFk'); }); cy.intercept('GET', /\/api\/Tickets\/filter/).as('ticketFilter'); cy.get('[data-cy="Customer ID_input"]').clear('1'); cy.get('[data-cy="Customer ID_input"]').type('1101{enter}'); cy.wait('@ticketFilter').then(({ request }) => { const { query } = request; expect(query).to.not.have.property('from'); expect(query).to.not.have.property('to'); expect(query).to.have.property('clientFk'); }); cy.get('[data-cy="vnTableCreateBtn"] > .q-btn__content > .q-icon').click(); cy.get('[data-cy="Customer_select"]').should('have.value', 'Bruce Wayne'); cy.get('[data-cy="Address_select"]').click(); cy.selectOptionBeta().click(); cy.get('[data-cy="Address_select"]').should('have.value', 'Bruce Wayne'); }); it('Client list create new client', () => { cy.dataCy('vnTableCreateBtn').should('exist'); cy.dataCy('vnTableCreateBtn').click(); const data = { Customer: { val: 1, type: 'select' }, Warehouse: { val: 'Warehouse One', type: 'select' }, Address: { val: 'employee', type: 'select' }, Landed: { val: '01-01-2024', type: 'date' }, Agency: { val: 'Other agency', type: 'select' }, }; cy.fillInForm(data); cy.dataCy('FormModelPopup_save').click(); cy.checkNotification('Data created'); cy.url().should('match', /\/ticket\/\d+\/summary/); }); });