logo

mastofe

My custom branche(s) on git.pleroma.social/pleroma/mastofe
commit: ab7cb80dd53dd9be14e6173f3c008791b0c35b9f
parent: 7a6d95f70ccb12d61355ecd677eff40dd13260b7
Author: Eugen Rochko <eugen@zeonfederated.com>
Date:   Fri, 14 Oct 2016 02:30:08 +0200

Merge branch 'kschaper-avatar-component-testing' into development

Diffstat:

Mpackage.json1+
Mspec/javascript/components/avatar.test.jsx22++++++++++++++++++----
Mspec/javascript/setup.js4++++
3 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/package.json b/package.json @@ -15,6 +15,7 @@ "browserify": "^13.1.0", "browserify-incremental": "^3.1.1", "chai": "^3.5.0", + "chai-enzyme": "^0.5.2", "enzyme": "^2.4.1", "es6-promise": "^3.2.1", "immutable": "^3.8.1", diff --git a/spec/javascript/components/avatar.test.jsx b/spec/javascript/components/avatar.test.jsx @@ -4,9 +4,23 @@ import { render } from 'enzyme'; import Avatar from '../../../app/assets/javascripts/components/components/avatar' describe('<Avatar />', () => { - it('renders an img with the given src', () => { - const src = '/path/to/image.jpg'; - const wrapper = render(<Avatar src={src} size={100} />); - expect(wrapper.find(`img[src="${src}"]`)).to.have.length(1); + const src = '/path/to/image.jpg'; + const size = 100; + const wrapper = render(<Avatar src={src} size={size} />); + + it('renders an img element with the given src', () => { + expect(wrapper.find('img')).to.have.attr('src', `${src}`); + }); + + it('renders an img element of the given size', () => { + ['width', 'height'].map((attr) => { + expect(wrapper.find('img')).to.have.attr(attr, `${size}`); + }); + }); + + it('renders a div element of the given size', () => { + ['width', 'height'].map((attr) => { + expect(wrapper.find('div')).to.have.style(attr, `${size}px`); + }); }); }); diff --git a/spec/javascript/setup.js b/spec/javascript/setup.js @@ -1,3 +1,7 @@ +import chai from 'chai'; +import chaiEnzyme from 'chai-enzyme'; +chai.use(chaiEnzyme()); + /** * http://airbnb.io/enzyme/docs/guides/jsdom.html */