MCPcopy
hub / github.com/Unleash/unleash / render

Function render

frontend/src/utils/testRenderer.tsx:21–78  ·  view source on GitHub ↗
(
    ui: JSX.Element,
    {
        route = '/',
        permissions = [],
        ...renderOptions
    }: { route?: string; permissions?: IPermission[] } & Omit<
        RenderOptions,
        'queries'
    > = {},
)

Source from the content-addressed store, hash-verified

19import { UnleashFlagProvider } from 'component/providers/UnleashFlagProvider/UnleashFlagProvider.tsx';
20
21export const render = (
22 ui: JSX.Element,
23 {
24 route = '/',
25 permissions = [],
26 ...renderOptions
27 }: { route?: string; permissions?: IPermission[] } & Omit<
28 RenderOptions,
29 'queries'
30 > = {},
31) => {
32 if (!route.startsWith('/')) {
33 throw new Error('Route must start with a /');
34 }
35
36 window.history.pushState({}, 'Test page', route);
37
38 const Wrapper: FC<{ children?: React.ReactNode }> = ({ children }) => (
39 <SWRConfig
40 value={{
41 provider: () => new Map(),
42 isVisible() {
43 return true;
44 },
45 dedupingInterval: 0,
46 }}
47 >
48 <UIProviderContainer>
49 <FeedbackProvider>
50 <AccessProviderMock permissions={permissions}>
51 <BrowserRouter>
52 <QueryParamProvider adapter={ReactRouter7Adapter}>
53 <ThemeProvider>
54 <AnnouncerProvider>
55 <UnleashFlagProvider>
56 <StickyProvider>
57 <HighlightProvider>
58 <EventTimelineProvider>
59 {children}
60 </EventTimelineProvider>
61 </HighlightProvider>
62 </StickyProvider>
63 </UnleashFlagProvider>
64 </AnnouncerProvider>
65 </ThemeProvider>
66 </QueryParamProvider>
67 </BrowserRouter>
68 </AccessProviderMock>
69 </FeedbackProvider>
70 </UIProviderContainer>
71 </SWRConfig>
72 );
73
74 return rtlRender(ui, {
75 wrapper: Wrapper,
76 ...renderOptions,
77 });
78};

Calls

no outgoing calls

Tested by 15

renderFeedbackFunction · 0.72
renderProgressFunction · 0.72
renderComponentFunction · 0.72
testSSOAuthOptionFunction · 0.72
renderDialogFunction · 0.72
openDialogFunction · 0.72
setupFunction · 0.72
setupFunction · 0.72
setupComponentFunction · 0.72
setupComponentFunction · 0.72
renderBannerFunction · 0.72
renderOpenTooltipFunction · 0.72