50 lines
1.1 KiB
JavaScript
50 lines
1.1 KiB
JavaScript
/**
|
|
* Test Setup File
|
|
* Runs before all tests to configure global test environment
|
|
*/
|
|
|
|
import { vi } from 'vitest';
|
|
|
|
// Mock localStorage
|
|
const localStorageMock = {
|
|
getItem: vi.fn(),
|
|
setItem: vi.fn(),
|
|
removeItem: vi.fn(),
|
|
clear: vi.fn()
|
|
};
|
|
global.localStorage = localStorageMock;
|
|
|
|
// Mock sessionStorage
|
|
const sessionStorageMock = {
|
|
getItem: vi.fn(),
|
|
setItem: vi.fn(),
|
|
removeItem: vi.fn(),
|
|
clear: vi.fn()
|
|
};
|
|
global.sessionStorage = sessionStorageMock;
|
|
|
|
// Mock fetch
|
|
global.fetch = vi.fn();
|
|
|
|
// Mock console methods to reduce noise in tests
|
|
global.console = {
|
|
...console,
|
|
error: vi.fn(),
|
|
warn: vi.fn(),
|
|
log: vi.fn(),
|
|
debug: vi.fn()
|
|
};
|
|
|
|
// Reset all mocks before each test
|
|
beforeEach(() => {
|
|
vi.clearAllMocks();
|
|
localStorageMock.getItem.mockReset();
|
|
localStorageMock.setItem.mockReset();
|
|
localStorageMock.removeItem.mockReset();
|
|
localStorageMock.clear.mockReset();
|
|
sessionStorageMock.getItem.mockReset();
|
|
sessionStorageMock.setItem.mockReset();
|
|
sessionStorageMock.removeItem.mockReset();
|
|
sessionStorageMock.clear.mockReset();
|
|
});
|