import selectors from '../../helpers/selectors.js'; import getBrowser from '../../helpers/puppeteer'; describe('InvoiceOut summary path', () => { let browser; let page; beforeAll(async() => { browser = await getBrowser(); page = browser.page; await page.loginAndModule('employee', 'invoiceOut'); await page.accessToSearchResult('T1111111'); }); afterAll(async() => { await browser.close(); }); it('should reach the summary section', async() => { const result = await page.expectURL('/summary'); expect(result).toBe(true); }); it('should contain the company from which the invoice is emited', async() => { const result = await page.waitToGetProperty(selectors.invoiceOutSummary.company, 'innerText'); expect(result).toEqual('Company VNL'); }); it('should contain the tax breakdown', async() => { const firstTax = await page.waitToGetProperty(selectors.invoiceOutSummary.taxOne, 'innerText'); const secondTax = await page.waitToGetProperty(selectors.invoiceOutSummary.taxTwo, 'innerText'); expect(firstTax).toContain('10%'); expect(secondTax).toContain('21%'); }); it('should contain the tickets info', async() => { const firstTicket = await page.waitToGetProperty(selectors.invoiceOutSummary.ticketOne, 'innerText'); const secondTicket = await page.waitToGetProperty(selectors.invoiceOutSummary.ticketTwo, 'innerText'); expect(firstTicket).toContain('Bat cave'); expect(secondTicket).toContain('Stark tower'); }); });