test(web): 添加 renderWithProviders — MemoryRouter + AntD ConfigProvider 包裹器

This commit is contained in:
iven
2026-05-03 23:04:19 +08:00
parent 0e789b530a
commit c93ae0bc66
2 changed files with 51 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
import { ReactElement } from 'react';
import { render, RenderOptions } from '@testing-library/react';
import { MemoryRouter } from 'react-router-dom';
import { ConfigProvider } from 'antd';
import zhCN from 'antd/locale/zh_CN';
interface CustomRenderOptions extends Omit<RenderOptions, 'wrapper'> {
route?: string;
}
export function renderWithProviders(ui: ReactElement, options: CustomRenderOptions = {}) {
const { route = '/', ...renderOptions } = options;
function Wrapper({ children }: { children: React.ReactNode }) {
return (
<MemoryRouter initialEntries={[route]}>
<ConfigProvider locale={zhCN}>{children}</ConfigProvider>
</MemoryRouter>
);
}
return render(ui, { wrapper: Wrapper, ...renderOptions });
}
export * from '@testing-library/react';