UNPKG

happypack

Version:

webpack speed booster, makes you happy!

52 lines (46 loc) 1.51 kB
import React from 'react'; import ReactDOM from 'react-dom'; import {renderIntoDocument} from 'react-addons-test-utils'; import { expect} from 'chai'; import { InfoBar } from 'components'; import { Provider } from 'react-redux'; import { browserHistory } from 'react-router'; import createStore from 'redux/create'; import ApiClient from 'helpers/ApiClient'; const client = new ApiClient(); describe('InfoBar', () => { const mockStore = { info: { load: () => {}, loaded: true, loading: false, data: { message: 'This came from the api server', time: Date.now() } } }; const store = createStore(browserHistory, client, mockStore); const renderer = renderIntoDocument( <Provider store={store} key="provider"> <InfoBar/> </Provider> ); const dom = ReactDOM.findDOMNode(renderer); it('should render correctly', () => { return expect(renderer).to.be.ok; }); it('should render with correct value', () => { const text = dom.getElementsByTagName('strong')[0].textContent; expect(text).to.equal(mockStore.info.data.message); }); it('should render with a reload button', () => { const text = dom.getElementsByTagName('button')[0].textContent; expect(text).to.be.a('string'); }); it('should render the correct className', () => { const styles = require('components/InfoBar/InfoBar.scss'); expect(styles.infoBar).to.be.a('string'); expect(dom.className).to.include(styles.infoBar); }); });