"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
require("@testing-library/jest-dom");
const react_1 = require("@testing-library/react");
const jest_axe_1 = require("jest-axe");
(0, react_1.configure)({ testIdAttribute: 'data-testid' });
// Extend Jest matchers with jest-axe
expect.extend(jest_axe_1.toHaveNoViolations);
// Mock WebSocket for tests
Object.defineProperty(window, 'WebSocket', {
    writable: true,
    value: jest.fn().mockImplementation(() => ({
        addEventListener: jest.fn(),
        removeEventListener: jest.fn(),
        send: jest.fn(),
        close: jest.fn(),
        readyState: 1,
        CONNECTING: 0,
        OPEN: 1,
        CLOSING: 2,
        CLOSED: 3
    }))
});
// Mock matchMedia
Object.defineProperty(window, 'matchMedia', {
    writable: true,
    value: jest.fn().mockImplementation(query => ({
        matches: false,
        media: query,
        onchange: null,
        addListener: jest.fn(),
        removeListener: jest.fn(),
        addEventListener: jest.fn(),
        removeEventListener: jest.fn(),
        dispatchEvent: jest.fn(),
    })),
});
//# sourceMappingURL=setupTests.js.map