Add category management: list API, UI integration, and search updates
This commit is contained in:
@@ -7,6 +7,7 @@ const getStockEntryMock = vi.fn();
|
||||
const updateStockItemMock = vi.fn();
|
||||
const useStockItemMock = vi.fn();
|
||||
const fetchLocationsMock = vi.fn();
|
||||
const listCategoriesMock = vi.fn();
|
||||
|
||||
vi.mock('../../../src/api/stock.js', () => ({
|
||||
listStockEntries: (...args) => listStockEntriesMock(...args),
|
||||
@@ -21,6 +22,10 @@ vi.mock('../../../src/api/locations.js', () => ({
|
||||
fetchLocations: (...args) => fetchLocationsMock(...args),
|
||||
}));
|
||||
|
||||
vi.mock('../../../src/api/categories.js', () => ({
|
||||
listCategories: (...args) => listCategoriesMock(...args),
|
||||
}));
|
||||
|
||||
const { stockListPageData } = await import('../../../src/features/stock/stock-list-page.js');
|
||||
|
||||
function createGroupedSummary() {
|
||||
@@ -112,6 +117,8 @@ describe('stock list grouped-first behavior', () => {
|
||||
updateStockItemMock.mockReset();
|
||||
useStockItemMock.mockReset();
|
||||
fetchLocationsMock.mockReset();
|
||||
listCategoriesMock.mockReset();
|
||||
listCategoriesMock.mockResolvedValue([]);
|
||||
|
||||
globalThis.window = createWindowMock();
|
||||
globalThis.requestAnimationFrame = (callback) => callback();
|
||||
@@ -133,6 +140,7 @@ describe('stock list grouped-first behavior', () => {
|
||||
listStockEntriesMock.mockResolvedValueOnce([]);
|
||||
listKitchenChangesMock.mockResolvedValue({ since: null, nextCursor: null, changes: [] });
|
||||
fetchLocationsMock.mockResolvedValue({ flat: [], tree: [] });
|
||||
listCategoriesMock.mockResolvedValue([]);
|
||||
|
||||
const store = { isConnected: true, addAlert: vi.fn() };
|
||||
const data = stockListPageData(store);
|
||||
@@ -357,8 +365,10 @@ describe('stock list grouped-first behavior', () => {
|
||||
await Promise.resolve();
|
||||
await Promise.resolve();
|
||||
|
||||
expect(listGroupedStockEntriesMock).not.toHaveBeenCalled();
|
||||
expect(listStockEntriesMock).not.toHaveBeenCalled();
|
||||
expect(listGroupedStockEntriesMock).toHaveBeenNthCalledWith(1, store, { expanded: false });
|
||||
expect(listGroupedStockEntriesMock).toHaveBeenNthCalledWith(2, store, { expanded: true });
|
||||
expect(listStockEntriesMock).toHaveBeenCalledTimes(1);
|
||||
expect(listStockEntriesMock).toHaveBeenCalledWith(store);
|
||||
expect(fetchLocationsMock).not.toHaveBeenCalled();
|
||||
expect(getStockEntryMock).toHaveBeenCalledWith(store, 'item-100');
|
||||
expect(returnVisit.entries[0].quantity).toBe(2);
|
||||
|
||||
Reference in New Issue
Block a user