Skip to content

Commit f6e8045

Browse files
committed
Passing test for Waku repro
Should fail since that's what both Waku and Next.js repro
1 parent 6d2a97a commit f6e8045

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

Diff for: packages/react-client/src/__tests__/ReactFlight-test.js

+31
Original file line numberDiff line numberDiff line change
@@ -2728,4 +2728,35 @@ describe('ReactFlight', () => {
27282728

27292729
expect(ReactNoop).toMatchRenderedOutput(<span>Hello, Seb</span>);
27302730
});
2731+
2732+
it('nesting regression test', async () => {
2733+
const StoryContext = React.createContext(undefined);
2734+
const StoryContextProviderClient = ({children, value}) => {
2735+
return (
2736+
<StoryContext.Provider value={value}>{children}</StoryContext.Provider>
2737+
);
2738+
};
2739+
const StoryContextProvider = clientReference(StoryContextProviderClient);
2740+
2741+
const A11yDecoratorClient = ({children}) => <>{children}</>;
2742+
const A11yDecorator = clientReference(A11yDecoratorClient);
2743+
2744+
const CenteredDecorator = ({children}) =>
2745+
ReactServer.createElement('div', null, children);
2746+
2747+
const page = {};
2748+
const transport = ReactNoopFlightServer.render(
2749+
<StoryContextProvider value={{page}}>
2750+
<CenteredDecorator page={page}>
2751+
<A11yDecorator page={page}>foo</A11yDecorator>
2752+
</CenteredDecorator>
2753+
</StoryContextProvider>,
2754+
);
2755+
2756+
await act(async () => {
2757+
ReactNoop.render(await ReactNoopFlightClient.read(transport));
2758+
});
2759+
2760+
expect(ReactNoop).toMatchRenderedOutput(<div>foo</div>);
2761+
});
27312762
});

0 commit comments

Comments
 (0)