<s>I'm going to revert</s> I have reverted https://github.com/facebook/react/pull/5947 because it's [very confusing](https://mobile.twitter.com/ReactStudent/status/1018749513572368384) to see Proxies in the console. The warning is just not worth the debugging impediment.

In the future, we should consider sealing or preventing extensions to pooled events (if we're not getting rid of pooling altogether, that is). But that would be a breaking change.
node.dispatchEvent(event);
    expect(() => {
      syntheticEvent.type = 'MouseEvent';
    }).toWarnDev(
      'Warning: This synthetic event is reused for performance reasons. If ' +
        "you're seeing this, you're setting the property `type` on a " +
        'released/nullified synthetic event. This is effectively a no-op. If you must ' +
        'keep the original synthetic event around, use event.persist(). ' +
        'See https://fb.me/react-event-pooling for more information.',
      {withoutStack: true},
    );
    expect(expectedCount).toBe(1);
  });
  it('should warn when calling `preventDefault` if the synthetic event has not been persisted', () => {
    let node;
    let expectedCount = 0;
    let syntheticEvent;
    const eventHandler = e => {
      syntheticEvent = e;
      expectedCount++;
    };
    node = ReactDOM.render(<div onClick={eventHandler} />, container);
    const event = document.createEvent('Event');
    event.initEvent('click', true, true);
    node.dispatchEvent(event);
    expect(() => syntheticEvent.preventDefault()).toWarnDev(
      'Warning: This synthetic event is reused for performance reasons. If ' +
        "you're seeing this, you're accessing the method `preventDefault` on a " +
        'released/nullified synthetic event. This is a no-op function. If you must ' +
        'keep the original synthetic event around, use event.persist(). ' +