Files
LingvAI/tests/reactUtils.tsx

37 lines
1002 B
TypeScript
Raw Normal View History

2021-03-18 18:52:58 +01:00
import { FC, ReactElement } from "react";
import { render, RenderOptions } from "@testing-library/react";
import { ChakraProvider } from "@chakra-ui/react";
import theme from "@theme";
import { Layout } from "@components";
2021-03-18 18:52:58 +01:00
// Jest JSDOM bug
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(),
})),
});
const Providers: FC = ({ children }) => (
<ChakraProvider theme={theme}>
<Layout>
{children}
</Layout>
2021-03-18 18:52:58 +01:00
</ChakraProvider>
);
const customRender = (
ui: ReactElement,
options?: Omit<RenderOptions, "queries">
) => render(ui, { wrapper: Providers, ...options });
export * from "@testing-library/react";
export { customRender as render };