From b113cf97fbbec49c087be130f0dd02e8fa5113f7 Mon Sep 17 00:00:00 2001 From: Kai Schaper <303@posteo.de> Date: Wed, 12 Oct 2016 18:06:18 +0200 Subject: add chai-enzyme; add/improve Avatar component specs --- spec/javascript/components/avatar.test.jsx | 22 ++++++++++++++++++---- spec/javascript/setup.js | 4 ++++ 2 files changed, 22 insertions(+), 4 deletions(-) (limited to 'spec/javascript') diff --git a/spec/javascript/components/avatar.test.jsx b/spec/javascript/components/avatar.test.jsx index 79b7d02f4..a0f67e700 100644 --- 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('', () => { - it('renders an img with the given src', () => { - const src = '/path/to/image.jpg'; - const wrapper = render(); - expect(wrapper.find(`img[src="${src}"]`)).to.have.length(1); + const src = '/path/to/image.jpg'; + const size = 100; + const wrapper = render(); + + 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 index 636cdcc7e..0d07f74d8 100644 --- 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 */ -- cgit