Bug

Unit tests using shallow rendering fail on 'TypeError: Cannot read property 'onSetDisplayName' of null'.

I can't seem to get TestUtils into jsfiddle, but here is the build output and code snippet.

```
import expect from 'expect';
import TestUtils from 'react-addons-test-utils';
import React from 'react';
import BlurInput from '...';
...
    beforeEach(function () {
        props = {value: '1', onChange: function () {}};
        expect.spyOn(props, 'onChange');
        let renderer = TestUtils.createRenderer();
        renderer.render(<BlurInput {...props} />);
        instance = getInstance(renderer);
        componentTree = renderer.getRenderOutput();
    });
    it('reflects value to underlying input', function () {
        expect(componentTree.props.value).toBe('1');
        expect(instance.state.value).toBe('1');
    });


```

```
00:04:18.742   1) BlurInput "before each" hook for "reflects value to underlying input":
00:04:18.742      TypeError: Cannot read property 'onSetDisplayName' of null
00:04:18.742       at new ShallowComponentWrapper (node_modules/react/lib/ReactTestUtils.js:349:33)
00:04:18.742       at ReactShallowRenderer._render (node_modules/react/lib/ReactTestUtils.js:399:20)
00:04:18.742       at _batchedRender (node_modules/react/lib/ReactTestUtils.js:381:12)
00:04:18.742       at ReactDefaultBatchingStrategyTransaction.Mixin.perform (node_modules/react/lib/Transaction.js:138:20)
00:04:18.742       at Object.ReactDefaultBatchingStrategy.batchedUpdates (node_modules/react/lib/ReactDefaultBatchingStrategy.js:63:19)
00:04:18.742       at Object.batchedUpdates (node_modules/react/lib/ReactUpdates.js:98:20)
00:04:18.742       at ReactShallowRenderer.render (node_modules/react/lib/ReactTestUtils.js:374:16)
00:04:18.742       at Context.<anonymous> (BlurInput-test.js:19:18)
```

**What is the expected behavior?**
Unit test should run normally.

**Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?**
15.2.1 has this issue.
15.2.0 does not.

var ReactBrowserEventEmitter = require('ReactBrowserEventEmitter');
var ReactCompositeComponent = require('ReactCompositeComponent');
var ReactInstanceMap = require('ReactInstanceMap');
var ReactInstrumentation = require('ReactInstrumentation');
var ReactReconciler = require('ReactReconciler');
var ReactUpdates = require('ReactUpdates');
var SyntheticEvent = require('SyntheticEvent');
var emptyObject = require('emptyObject');
var findDOMNode = require('findDOMNode');
var invariant = require('invariant');
var topLevelTypes = EventConstants.topLevelTypes;
function Event(suffix) {}
/**
 * @class ReactTestUtils
 */
function findAllInRenderedTreeInternal(inst, test) {
  if (!inst || !inst.getPublicInstance) {
    return [];
  }
  var publicInst = inst.getPublicInstance();
  var ret = test(publicInst) ? [publicInst] : [];
  var currentElement = inst._currentElement;
  if (ReactTestUtils.isDOMComponent(publicInst)) {
    var renderedChildren = inst._renderedChildren;
    var key;
    for (key in renderedChildren) {
      if (!renderedChildren.hasOwnProperty(key)) {
        continue;
      }
      ret = ret.concat(