title: Enzyme: Value props returns undefined in simulating onChange event
body: <p>I'm trying to simulate onChange event with <code>simulate</code> function. I also have passed the second argument to mock event onChange as the value is part of the event. But somehow it gives me unexpected result as value that I have passed to the second argument returns <code>undefined</code> instead of <code>new comment</code>. Any idea of this issue?</p>
  
  <p><em>CommentBox.js</em></p>
  
  <pre><code>import React from 'react';
  
  class CommentBox extends React.Component {
      state = {
          comment: ''
      }
  
      handleChange = event =&gt; {
          this.setState({
              comment: event.value
          })
      }
  
      handleSubmit = event =&gt; {
          event.preventDefault();
      }
  
      render() {
          return (
              &lt;form onSubmit={this.handleSubmit}&gt;
                  &lt;h4&gt;Add a comment&lt;/h4&gt;
                  &lt;textarea onChange={this.handleChange} value={this.state.comment} /&gt;
                  &lt;div&gt;
                      &lt;button&gt;Submit Comment&lt;/button&gt;
                  &lt;/div&gt;
              &lt;/form&gt;
          )
      }
  }
  
  export default CommentBox;
  </code></pre>
  
  <p><em>CommentBox.text.js</em></p>
  
  <pre class="lang-js prettyprint-override"><code>import React from 'react';
  import { mount } from 'enzyme';
  import CommentBox from 'components/CommentBox';
  
  let wrapped;
  
  beforeEach(() =&gt; {
      wrapped = mount(&lt;CommentBox /&gt;);
  })
  
  afterEach(() =&gt; {
      wrapped.unmount();
  })
  
  it('has a textarea and a button', () =&gt; {
      expect(wrapped.find('textarea').length).toEqual(1);
      expect(wrapped.find('button').length).toEqual(1);
  });
  
  it('has a text area that users can type in', () =&gt; {
      wrapped.find('textarea').simulate('change', {
          target: {
              value: 'new comment'
          }
      });
      wrapped.update();
  
      expect(wrapped.find('textarea').prop('value')).toEqual('new comment');
  });
  </code></pre>
  
  <p>I expect the output of <code>new comment</code>, but the actual is returned <code>undefined</code></p>