Run the [`fixtures/ssr` test harness](https://github.com/facebook/react/tree/master/fixtures/ssr). In the terminal, the following warning is logged:

```
Warning: Unknown prop `onClick` on <a> tag. Remove this prop from the element. For details, see https://fb.me/react-unknown-prop
  in a (at Page.js:12)
  in p (at Page.js:18)
  in div (at Page.js:17)
  in Page (at App.js:12)
  in div (at App.js:10)
  in body (at Chrome.js:17)
  in html (at Chrome.js:9)
  in Chrome (at App.js:9)
  in App (at render.js:18)
```

SSR behavior should match client-side behavior and not warn for a valid attribute.
describe('property to attribute mapping', function() {
    describe('string properties', function() {
      itRenders('simple numbers', async render => {
        const e = await render(<div width={30} />);
        expect(e.getAttribute('width')).toBe('30');
      });
      itRenders('simple strings', async render => {
        const e = await render(<div width={'30'} />);
        expect(e.getAttribute('width')).toBe('30');
      });
      
      itRenders('string prop with true value', async render => {
        const e = await render(<a href={true} />);
        expect(e.getAttribute('href')).toBe('true');
      });
      
      itRenders('string prop with false value', async render => {
        const e = await render(<a href={false} />);
        expect(e.getAttribute('href')).toBe('false');
      });
      itRenders('no string prop with null value', async render => {
        const e = await render(<div width={null} />);
        expect(e.hasAttribute('width')).toBe(false);
      });
    });
    describe('boolean properties', function() {
      itRenders('boolean prop with true value', async render => {
        const e = await render(<div hidden={true} />);
        expect(e.getAttribute('hidden')).toBe('');
      });