UNPKG

caitai-security-test-framework

Version:

A comprehensive test framework with security testing, coverage reporting, and multiple test categories

73 lines (63 loc) 1.67 kB
import { vi } from 'vitest'; import '@testing-library/jest-dom'; // Global test setup export default function setup() { // Mock fetch globally global.fetch = vi.fn(); // 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 window.matchMedia (only in browser environment) if (typeof window !== 'undefined') { Object.defineProperty(window, 'matchMedia', { writable: true, value: vi.fn().mockImplementation(query => ({ matches: false, media: query, onchange: null, addListener: vi.fn(), removeListener: vi.fn(), addEventListener: vi.fn(), removeEventListener: vi.fn(), dispatchEvent: vi.fn(), })), }); // Mock IntersectionObserver global.IntersectionObserver = vi.fn().mockImplementation(() => ({ observe: vi.fn(), unobserve: vi.fn(), disconnect: vi.fn(), })); // Mock ResizeObserver global.ResizeObserver = vi.fn().mockImplementation(() => ({ observe: vi.fn(), unobserve: vi.fn(), disconnect: vi.fn(), })); } // Mock console methods to reduce noise in tests global.console = { ...console, warn: vi.fn(), error: vi.fn(), }; // Setup cleanup after each test afterEach(() => { vi.clearAllMocks(); }); } // Auto-setup if imported setup();