<!--
  Note: if the issue is about documentation or the website, please file it at:
  https://github.com/reactjs/reactjs.org/issues/new
-->

**Do you want to request a *feature* or report a *bug*?** Bug, I guess

**What is the current behavior?** 


```
  console.error node_modules/fbjs/lib/warning.js:33
    Warning: Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.
```

Steps to reproduce the behavior:
1. `git clone https://github.com/stereobooster/react-context-issue`
2. `cd react-context-issue`
3. `yarn`
4. `yarn test`

**What is the expected behavior?** no warning

**Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?** React 16.4. Browser not affected, because error is in node.js

Open this because of https://github.com/facebook/react/pull/13127#issuecomment-402527012

Issue happens because of Enzyme (https://github.com/airbnb/enzyme/issues/1693), code is unreleased, so I copy-pasted it from master. 

I'm looking for advice or some clue on how to fix this, so I would be able to create PR in Enzyme repo (or in React repo if this is the case). Thank you.


render() {
        return <Shape />;
      }
    }
    let ref = {};
    class Outer extends React.Component {
      test = React.createRef();
      componentDidMount() {
        ref = this.test.current;
      }
      componentDidUpdate() {
        ref = this.test.current;
      }
      render() {
        return (
          <Surface>
            <Group>
              {this.props.mountCustomShape && <CustomShape ref={this.test} />}
            </Group>
          </Surface>
        );
      }
    }
    ReactDOM.render(<Outer />, container);
    expect(ref).toBe(null);
    ReactDOM.render(<Outer mountCustomShape={true} />, container);
    expect(ref.constructor).toBe(CustomShape);
  });
  it('adds and updates event handlers', () => {
    function render(onClick) {