65 lines
2.2 KiB
JavaScript
65 lines
2.2 KiB
JavaScript
|
import selectors from '../../helpers/selectors.js';
|
||
|
import createNightmare from '../../helpers/nightmare';
|
||
|
|
||
|
describe('Claim detail', () => {
|
||
|
const nightmare = createNightmare();
|
||
|
|
||
|
beforeAll(() => {
|
||
|
nightmare
|
||
|
.loginAndModule('salesPerson', 'claim')
|
||
|
.accessToSearchResult('4')
|
||
|
.accessToSection('claim.card.detail');
|
||
|
});
|
||
|
|
||
|
it('should add the first claimable item from ticket to the claim', async() => {
|
||
|
const result = await nightmare
|
||
|
.waitToClick(selectors.claimDetail.addItemButton)
|
||
|
.waitToClick(selectors.claimDetail.firstClaimableSaleFromTicket)
|
||
|
.waitForLastSnackbar();
|
||
|
|
||
|
expect(result).toEqual('Data saved!');
|
||
|
});
|
||
|
|
||
|
it('should confirm the claim contains now two items', async() => {
|
||
|
const result = await nightmare
|
||
|
.countElement(selectors.claimDetail.claimDetailLine);
|
||
|
|
||
|
expect(result).toEqual(2);
|
||
|
});
|
||
|
|
||
|
it('should edit de second item claimed quantity', async() => {
|
||
|
const result = await nightmare
|
||
|
.write(selectors.claimDetail.secondItemQuantityInput, 10)
|
||
|
.type('body', '\u000d') // simulates enter
|
||
|
.waitForLastSnackbar();
|
||
|
|
||
|
expect(result).toEqual('Data saved!');
|
||
|
});
|
||
|
|
||
|
it('should confirm the second item, and the claimed total were correctly edited', async() => {
|
||
|
const claimedQuantity = await nightmare
|
||
|
.getProperty(selectors.claimDetail.secondItemQuantityInput, 'value');
|
||
|
|
||
|
const totalClaimed = await nightmare
|
||
|
.getProperty(selectors.claimDetail.totalClaimed, 'innerText');
|
||
|
|
||
|
expect(claimedQuantity).toEqual('10');
|
||
|
expect(totalClaimed).toEqual('29.50 €');
|
||
|
});
|
||
|
|
||
|
it('should delete the second item from the claim', async() => {
|
||
|
const result = await nightmare
|
||
|
.waitToClick(selectors.claimDetail.secondItemDeleteButton)
|
||
|
.waitForLastSnackbar();
|
||
|
|
||
|
expect(result).toEqual('Data saved!');
|
||
|
});
|
||
|
|
||
|
it('should confirm the claim contains now one item', async() => {
|
||
|
const result = await nightmare
|
||
|
.countElement(selectors.claimDetail.claimDetailLine);
|
||
|
|
||
|
expect(result).toEqual(1);
|
||
|
});
|
||
|
});
|