When I rerender a component with "defaultChecked" or "defaultValue" react fails to update the "value" and "checked" attribute accordingly.

Before you say "use a controlled input" I would argue that this is a bug as it basically disallows uncontrolled forms with "reset" buttons. (It will always reset to whatever the initial default value was).

return <div>{props.test}</div>;
    }
    Child.defaultProps = {test: 2};
    Child.propTypes = {test: React.PropTypes.string};
    spyOn(console, 'error');
    ReactTestUtils.renderIntoDocument(<Child />);
    expect(console.error.argsForCall.length).toBe(1);
    expect(
      console.error.argsForCall[0][0].replace(/\(at .+?:\d+\)/g, '(at **)')
    ).toBe(
      'Warning: Failed prop type: Invalid prop `test` of type `number` ' +
      'supplied to `Child`, expected `string`.\n' +
      '    in Child (at **)'
    );
  });
  it('should receive context', function() {
    var Parent = React.createClass({
      childContextTypes: {
        lang: React.PropTypes.string,
      },
      getChildContext: function() {
        return {lang: 'en'};
      },
      render: function() {
        return <Child />;
      },
    });
    function Child(props, context) {