import selectors from '../../helpers/selectors.js'; import createNightmare from '../../helpers/nightmare'; describe('Item create niche path', () => { const nightmare = createNightmare(); beforeAll(() => { nightmare .loginAndModule('buyer', 'item') .accessToSearchResult('Gem of Time') .accessToSection('item.card.niche'); }); it(`should click create a new niche and delete a former one`, async () => { const result = await nightmare .waitToClick(selectors.itemNiches.addNicheButton) .waitToClick(selectors.itemNiches.secondNicheRemoveButton) .waitToClick(selectors.itemNiches.thirdWarehouseSelect) .waitToClick(selectors.itemNiches.thirdWarehouseSelectFourthOption) .type(selectors.itemNiches.thirdCodeInput, 'A4') .click(selectors.itemNiches.submitNichesButton) .waitForLastSnackbar(); expect(result).toEqual('Data saved!'); }); it(`should confirm the first niche is the expected one`, async () => { let result = await nightmare .click(selectors.itemBasicData.basicDataButton) .wait(selectors.itemBasicData.nameInput) .click(selectors.itemNiches.nicheButton) .waitForTextInInput(selectors.itemNiches.firstWarehouseSelect, 'Warehouse One') .waitToGetProperty(selectors.itemNiches.firstWarehouseSelect, 'value'); expect(result).toEqual('Warehouse One'); result = await nightmare .waitToGetProperty(selectors.itemNiches.firstCodeInput, 'value'); expect(result).toEqual('A1'); }); it(`should confirm the second niche is the expected one`, async () => { let result = await nightmare .waitToGetProperty(selectors.itemNiches.secondWarehouseSelect, 'value'); expect(result).toEqual('Warehouse Three'); result = await nightmare .waitToGetProperty(selectors.itemNiches.secondCodeInput, 'value'); expect(result).toEqual('A3'); }); it(`should confirm the third niche is the expected one`, async () => { let result = await nightmare .waitToGetProperty(selectors.itemNiches.thirdWarehouseSelect, 'value'); expect(result).toEqual('Warehouse Two'); result = await nightmare .waitToGetProperty(selectors.itemNiches.thirdCodeInput, 'value'); expect(result).toEqual('A4'); }); });