diff --git a/src/middleware/find.js b/src/middleware/find.js index 01be479..7396873 100644 --- a/src/middleware/find.js +++ b/src/middleware/find.js @@ -4,7 +4,7 @@ export default function find(selector){ let elements, name if (!(typeof selector === "string")) { - name = selector.name.toLowerCase() + name = (selector.name || selector.displayName).toLowerCase() elements = TestUtils.scryRenderedComponentsWithType(this.instance, selector) } else if (selector.match(/\./)) { selector = selector.replace(/\./, '') diff --git a/tests/components/component.jsx b/tests/components/component.jsx index e9763b4..353adad 100644 --- a/tests/components/component.jsx +++ b/tests/components/component.jsx @@ -1,5 +1,6 @@ import React, { Component } from 'react' import TinyComponent from './tiny-component' +import OtherComponent from './other-component' export default class TestComponent extends Component { constructor(props, context){ @@ -23,6 +24,7 @@ export default class TestComponent extends Component { Click Me + ) } diff --git a/tests/components/other-component.jsx b/tests/components/other-component.jsx new file mode 100644 index 0000000..350d915 --- /dev/null +++ b/tests/components/other-component.jsx @@ -0,0 +1,7 @@ +import React from 'react' + +export default React.createClass({ + render: function() { + return + } +}) diff --git a/tests/find.jsx b/tests/find.jsx index 77f60e1..317a730 100644 --- a/tests/find.jsx +++ b/tests/find.jsx @@ -3,6 +3,7 @@ import { Find } from '../src/middleware' import { expect } from 'chai' import { TestComponent, TinyComponent } from './components' +import OtherComponent from './components/other-component' describe('Find middleware', () => { it('should find div', () => { @@ -35,4 +36,13 @@ describe('Find middleware', () => { expect(tinycomponent.props.test).to.be.equal('true') }) }) + + it('should find a rendered component created with `createClass`', () => { + Test() + .find(OtherComponent) + .test(function() { + let otherComponent = this.elements['other-component'] + expect(otherComponent.props.test).to.be.equal('true') + }) + }) })