diff --git a/packages/enzyme-test-suite/test/ReactWrapper-spec.jsx b/packages/enzyme-test-suite/test/ReactWrapper-spec.jsx index 854fa074c..ec4746364 100644 --- a/packages/enzyme-test-suite/test/ReactWrapper-spec.jsx +++ b/packages/enzyme-test-suite/test/ReactWrapper-spec.jsx @@ -2422,6 +2422,27 @@ describeWithDOM('mount', () => { expect(parents.at(0).hasClass('foo')).to.equal(true); expect(parents.at(1).hasClass('bax')).to.equal(true); }); + + it('should work with components in the tree', () => { + const Foo = createClass({ + render() { + return
; + }, + }); + const wrapper = mount(( +
+ +
+ )); + const root = wrapper.find('.root'); + expect(root).to.have.lengthOf(1); + expect(root.hasClass('root')).to.equal(true); + expect(root.hasClass('bar')).to.equal(false); + + const bar = root.find('.bar'); + expect(bar).to.have.lengthOf(1); + expect(bar.parents('.root')).to.have.lengthOf(1); + }); }); describe('.parent()', () => { diff --git a/packages/enzyme-test-suite/test/ShallowWrapper-spec.jsx b/packages/enzyme-test-suite/test/ShallowWrapper-spec.jsx index 4569cc38e..95ba7f066 100644 --- a/packages/enzyme-test-suite/test/ShallowWrapper-spec.jsx +++ b/packages/enzyme-test-suite/test/ShallowWrapper-spec.jsx @@ -2282,6 +2282,17 @@ describe('shallow', () => { expect(parents.at(1).hasClass('bar')).to.equal(true); expect(parents.at(2).hasClass('bax')).to.equal(true); }); + + it('should work with component', () => { + const Foo = createClass({ + render() { + return
; + }, + }); + const wrapper = shallow(); + expect(wrapper.find('.bar')).to.have.length(1); + expect(wrapper.find('.bar').parent()).to.have.length(0); + }); }); describe('.closest(selector)', () => {