Intended behavior: https://github.com/reactwg/react-18/discussions/31

Sandbox: https://codesandbox.io/s/react-18-layouteffect-semantics-forked-m02w5

Expected: when suspended content is hidden and then shown, we get layout cleanup followed by layout setup.
Actual: only layout cleanup happens.


state = {render: false};
        componentDidMount() {
          setTimeout(() => this.setState({render: true}));
        }
        render() {
          return (
            <Suspense fallback={<span>loading...</span>}>
              {this.state.render && <LazyHello />}
            </Suspense>
          );
        }
      }
      const root = ReactTestRenderer.create(null);
      root.update(<App name="world" />);
      jest.advanceTimersByTime(1000);
    });
    it('updates memoized child of suspense component when context updates (simple memo)', () => {
      const {useContext, createContext, useState, memo} = React;
      const ValueContext = createContext(null);
      const MemoizedChild = memo(function MemoizedChild() {
        const text = useContext(ValueContext);
        try {
          TextResource.read([text, 1000]);
          Scheduler.unstable_yieldValue(text);