Add show picked filter to pick list

This commit is contained in:
beatz174-bit committed 2025-11-23 14:32:14 +10:00
1 parent 489e291959
commit b1acfafcb2
2 files changed
+64 -4

No files matched your search

+47
View File
@@ -133,4 +133,51 @@ describe('ActivePickListScreen product search', () => {
expect(updateMock).toHaveBeenCalledWith('item-1', expect.objectContaining({ quantity: 3 }));
expect(addMock).not.toHaveBeenCalled();
});
it('hides picked items when show picked is unchecked', async () => {
pickItemsMock.mockReturnValue([
{
id: 'item-1',
pick_list_id: 'list-1',
product_id: 'prod-1',
quantity: 1,
is_carton: false,
status: 'picked',
created_at: 0,
updated_at: 0,
},
{
id: 'item-2',
pick_list_id: 'list-1',
product_id: 'prod-2',
quantity: 1,
is_carton: false,
status: 'pending',
created_at: 0,
updated_at: 0,
},
]);
const user = userEvent.setup();
render(
<MemoryRouter initialEntries={['/pick-lists/1']}>
<Routes>
<Route path="/pick-lists/:id" element={<ActivePickListScreen />} />
</Routes>
</MemoryRouter>,
);
expect(screen.getByText('Cola')).toBeVisible();
expect(screen.getByText('Chips')).toBeVisible();
const togglePicked = screen.getByLabelText(/show picked/i);
await user.click(togglePicked);
expect(screen.queryByText('Cola')).not.toBeInTheDocument();
expect(screen.getByText('Chips')).toBeVisible();
await user.click(togglePicked);
expect(screen.getByText('Cola')).toBeVisible();
});
});