/// describe('VnSearchBar', () => { const employeeId = ' #1'; const salesPersonId = ' #18'; const idGap = '.q-item > .q-item__label'; const cardList = '.vn-card-list'; let url; beforeEach(() => { cy.login('developer'); cy.visit('#/customer/list'); cy.url().then((currentUrl) => (url = currentUrl)); }); it('should redirect to customer summary page', () => { searchAndCheck('1', employeeId); searchAndCheck('salesPerson', salesPersonId); }); it('should stay on the list page if there are several results or none', () => { cy.writeSearchbar('salesA{enter}'); checkCardListAndUrl(2); cy.clearSearchbar(); cy.writeSearchbar('0{enter}'); checkCardListAndUrl(0); }); const searchAndCheck = (searchTerm, expectedText) => { cy.clearSearchbar(); cy.writeSearchbar(`${searchTerm}{enter}`); cy.get(idGap).should('have.text', expectedText); }; const checkCardListAndUrl = (expectedLength) => { cy.get(cardList).then(($cardList) => { expect($cardList.find('.q-card').length).to.equal(expectedLength); cy.url().then((currentUrl) => expect(currentUrl).to.contain(url)); }); }; });