Observed this on react@16.0.0-beta.5

```js
import React from 'react';
import { renderToString } from 'react-dom/server';

const B = () => 'b';

console.log(renderToString(<div>{'a'}<B />{'c'}</div>));
```

This renders as `<div data-reactroot="">a<!-- -->bc</div>`. If you try to hydrate this you'll get the error: Text content did not match. Server: "bc" Client: "b".
super();
            this.state = {value: 'Hello'};
          }
          handleChange(event) {
            if (this.props.onChange) {
              this.props.onChange(event);
            }
            this.setState({value: event.target.value});
          }
          render() {
            return (
              <select
                value={this.state.value}
                onChange={this.handleChange.bind(this)}>
                <option key="1" value="Hello">Hello</option>
                <option key="2" value="Goodbye">Goodbye</option>
              </select>
            );
          }
        };
      });
      describe('user interaction with controlled inputs', function() {
        itClientRenders('a controlled text input', async render => {
          let changeCount = 0;
          const e = await render(
            <ControlledInput onChange={() => changeCount++} />,
          );
          expect(changeCount).toBe(0);