title: Test react-final-form change event
body: <p>Could someone tell me how to test this simple behavior, I've been trying to solve this for a lot of time now, and I hope I'm just missing something because a change event should be easy to test.</p>
  
  <p>I tried calling <code>onChange</code> instead of <code>simulate</code>, <code>wrapper.update()</code>, <code>await new Promise(resolve =&gt; setTimeout(resolve))</code> no result.</p>
  
  <pre><code>import * as React from 'react';
  import { Form, Field } from 'react-final-form';
  import { mount } from 'enzyme';
  
  
  it('change event', () =&gt; {
    const wrapper = mount(
      &lt;Form onSubmit={jest.fn()}&gt;
      {() =&gt; (
        &lt;Field name="name"&gt;
        {({input}) =&gt; &lt;input value={input.value} onChange={input.onChange} /&gt;}
        &lt;/Field&gt;
      )}
      &lt;/Form&gt;
    )
  
    expect(wrapper.find('input').prop('value')).toEqual('');
    wrapper.find('input').simulate('change', { target: { value: 'blue cheese' } } );
    expect(wrapper.find('input').prop('value')).toEqual('blue cheese');
  });
  </code></pre>
  
  <p>This test fails miserably:</p>
  
  <pre><code>    Expected value to equal:
        "blue cheese"
      Received:
        ""
  </code></pre>