86 lines
4.0 KiB
JavaScript
86 lines
4.0 KiB
JavaScript
import selectors from '../../helpers/selectors.js';
|
|
import getBrowser from '../../helpers/puppeteer';
|
|
|
|
describe('Item index path', () => {
|
|
let browser;
|
|
let page;
|
|
beforeAll(async() => {
|
|
browser = await getBrowser();
|
|
page = browser.page;
|
|
await page.loginAndModule('salesPerson', 'item');
|
|
await page.waitToClick(selectors.globalItems.searchButton);
|
|
});
|
|
|
|
afterAll(async() => {
|
|
await browser.close();
|
|
});
|
|
|
|
it('should click on the fields to show button to open the list of columns to show', async() => {
|
|
await page.waitToClick(selectors.itemsIndex.fieldsToShowButton);
|
|
const visible = await page.isVisible(selectors.itemsIndex.fieldsToShowForm);
|
|
|
|
expect(visible).toBeTruthy();
|
|
});
|
|
|
|
it('should unmark all checkboxes except the first and the last ones', async() => {
|
|
await page.waitToClick(selectors.itemsIndex.idCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.stemsCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.sizeCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.nicheCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.typeCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.categoryCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.intrastadCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.originCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.buyerCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.destinyCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.saveFieldsButton);
|
|
const message = await page.waitForSnackbar();
|
|
|
|
expect(message.text).toContain('Data saved!');
|
|
});
|
|
|
|
it('should navigate forth and back to see the images column is still visible', async() => {
|
|
await page.waitToClick(selectors.itemsIndex.firstSearchResult);
|
|
await page.waitToClick(selectors.itemDescriptor.goBackToModuleIndexButton);
|
|
await page.waitToClick(selectors.globalItems.searchButton);
|
|
await page.waitForSelector(selectors.itemsIndex.searchResult);
|
|
await page.waitImgLoad(selectors.itemsIndex.firstItemImage);
|
|
const imageVisible = await page.isVisible(selectors.itemsIndex.firstItemImageTd);
|
|
|
|
expect(imageVisible).toBeTruthy();
|
|
});
|
|
|
|
it('should check the ids column is not visible', async() => {
|
|
await page.waitForSelector(selectors.itemsIndex.firstItemId, {hidden: true});
|
|
});
|
|
|
|
it('should mark all unchecked boxes to leave the index as it was', async() => {
|
|
await page.waitForTimeout(500); // otherwise the snackbar doesnt appear some times.
|
|
await page.waitToClick(selectors.itemsIndex.fieldsToShowButton);
|
|
await page.waitToClick(selectors.itemsIndex.idCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.stemsCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.sizeCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.nicheCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.typeCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.categoryCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.intrastadCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.originCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.buyerCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.destinyCheckbox);
|
|
await page.waitToClick(selectors.itemsIndex.saveFieldsButton);
|
|
const message = await page.waitForSnackbar();
|
|
|
|
expect(message.text).toContain('Data saved!');
|
|
});
|
|
|
|
it('should now navigate forth and back to see the ids column is now visible', async() => {
|
|
await page.waitToClick(selectors.itemsIndex.firstSearchResult);
|
|
await page.waitToClick(selectors.itemDescriptor.goBackToModuleIndexButton);
|
|
await page.waitToClick(selectors.globalItems.searchButton);
|
|
await page.waitForSelector(selectors.itemsIndex.searchResult);
|
|
const idVisible = await page.isVisible(selectors.itemsIndex.firstItemId);
|
|
|
|
expect(idVisible).toBeTruthy();
|
|
});
|
|
});
|