import selectors from '../../helpers/selectors.js'; import getBrowser from '../../helpers/puppeteer.js'; describe('Claim summary path', () => { let browser; let page; const claimId = '4'; beforeAll(async() => { browser = await getBrowser(); page = browser.page; }); afterAll(async() => { await browser.close(); }); it('should navigate to the target claim summary section', async() => { await page.loginAndModule('salesPerson', 'claim'); await page.accessToSearchResult(claimId); await page.waitForState('claim.card.summary'); }); it(`should display details from the claim and it's client on the top of the header`, async() => { await page.waitForTextInElement(selectors.claimSummary.header, 'Tony Stark'); const result = await page.waitToGetProperty(selectors.claimSummary.header, 'innerText'); expect(result).toContain('4 -'); expect(result).toContain('Tony Stark'); }); it('should display the claim state', async() => { const result = await page.waitToGetProperty(selectors.claimSummary.state, 'innerText'); expect(result).toContain('Resuelto'); }); it('should display the observation', async() => { const result = await page.waitToGetProperty(selectors.claimSummary.observation, 'innerText'); expect(result).toContain('Wisi forensibus mnesarchum in cum. Per id impetus abhorreant'); }); it('should display the claimed line(s)', async() => { const result = await page.waitToGetProperty(selectors.claimSummary.firstSaleItemId, 'innerText'); expect(result).toContain('2'); }); it(`should click on the first sale ID making the item descriptor visible`, async() => { const firstItem = selectors.claimSummary.firstSaleItemId; await page.evaluate(selectors => { document.querySelector(selectors).scrollIntoView(); }, firstItem); await page.click(firstItem); await page.waitImgLoad(selectors.claimSummary.firstSaleDescriptorImage); const visible = await page.isVisible(selectors.claimSummary.itemDescriptorPopover); expect(visible).toBeTruthy(); }); it(`should check the url for the item diary link of the descriptor is for the right item id`, async() => { await page.waitForSelector(selectors.claimSummary.itemDescriptorPopoverItemDiaryButton, {visible: true}); await page.closePopup(); }); it('should display the claim development details', async() => { const result = await page.waitToGetProperty(selectors.claimSummary.firstDevelopmentWorker, 'innerText'); expect(result).toContain('salesAssistantNick'); }); it(`should click on the first development worker making the worker descriptor visible`, async() => { await page.waitToClick(selectors.claimSummary.firstDevelopmentWorker); const visible = await page.isVisible(selectors.claimSummary.firstDevelopmentWorkerGoToClientButton); expect(visible).toBeTruthy(); }); it(`should check the url for the go to clientlink of the descriptor is for the right client id`, async() => { await page.waitForSelector(selectors.claimSummary.firstDevelopmentWorkerGoToClientButton, {visible: true}); await page.closePopup(); }); it(`should click on the first action ticket ID making the ticket descriptor visible`, async() => { await page.waitToClick(selectors.claimSummary.firstActionTicketId); await page.waitForSelector(selectors.claimSummary.firstActionTicketDescriptor); const visible = await page.isVisible(selectors.claimSummary.firstActionTicketDescriptor); expect(visible).toBeTruthy(); }); });