Closed
Description
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.
Metadata
Metadata
Assignees
Labels
No labels