diff --git a/src/frontend/tests/helpers.ts b/src/frontend/tests/helpers.ts index c7df7d3f8e..36d421c865 100644 --- a/src/frontend/tests/helpers.ts +++ b/src/frontend/tests/helpers.ts @@ -34,13 +34,14 @@ export const clickButtonIfVisible = async (page, name, timeout = 500) => { export const clearTableFilters = async (page) => { await openFilterDrawer(page); await clickButtonIfVisible(page, 'Clear Filters'); - await page.getByLabel('filter-drawer-close').click(); + await closeFilterDrawer(page); }; export const setTableChoiceFilter = async (page, filter, value) => { await openFilterDrawer(page); await page.getByRole('button', { name: 'Add Filter' }).click(); + await page.getByPlaceholder('Select filter').fill(filter); await page.getByPlaceholder('Select filter').click(); await page.getByRole('option', { name: filter }).click(); diff --git a/src/frontend/tests/pages/pui_stock.spec.ts b/src/frontend/tests/pages/pui_stock.spec.ts index 33c5f551f9..9f32a32d0f 100644 --- a/src/frontend/tests/pages/pui_stock.spec.ts +++ b/src/frontend/tests/pages/pui_stock.spec.ts @@ -1,6 +1,11 @@ import { test } from '../baseFixtures.js'; import { baseUrl } from '../defaults.js'; -import { clickButtonIfVisible, openFilterDrawer } from '../helpers.js'; +import { + clearTableFilters, + clickButtonIfVisible, + openFilterDrawer, + setTableChoiceFilter +} from '../helpers.js'; import { doQuickLogin } from '../login.js'; test('Stock - Basic Tests', async ({ page }) => { @@ -84,9 +89,15 @@ test('Stock - Filters', async ({ page }) => { .getByRole('cell', { name: 'A round table - with blue paint' }) .waitFor(); - // Clear filters (ready for next set of tests) - await openFilterDrawer(page); - await clickButtonIfVisible(page, 'Clear Filters'); + // Filter by custom status code + await clearTableFilters(page); + await setTableChoiceFilter(page, 'Status', 'Incoming goods inspection'); + await page.getByText('1 - 8 / 8').waitFor(); + await page.getByRole('cell', { name: '1551AGY' }).first().waitFor(); + await page.getByRole('cell', { name: 'widget.blue' }).first().waitFor(); + await page.getByRole('cell', { name: '002.01-PCBA' }).first().waitFor(); + + await clearTableFilters(page); }); test('Stock - Serial Numbers', async ({ page }) => {