content: import _$ from 'jquery';
  import React from 'react';
  import ReactDOM from 'react-dom';
  import TestUtils from 'react-addons-test-utils';
  import jsdom from 'jsdom';
  import chai, { expect } from 'chai';
  import chaiJquery from 'chai-jquery';
  import { Provider } from 'react-redux';
  import { createStore } from 'redux';
  import reducers from '../src/reducers';
  
  global.document = jsdom.jsdom('<!doctype html><html><body></body></html>');
  global.window = global.document.defaultView;
  global.navigator = global.window.navigator;
  const $ = _$(window);
  
  chaiJquery(chai, chai.util, $);
  
  function renderComponent(ComponentClass, props = {}, state = {}) {
    const componentInstance =  TestUtils.renderIntoDocument(
      <Provider store={createStore(reducers, state)}>
        <ComponentClass {...props} />
      </Provider>
    );
  
    return $(ReactDOM.findDOMNode(componentInstance));
  }
  
  $.fn.simulate = function(eventName, value) {
    if (value) {
      this.val(value);
    }
    TestUtils.Simulate[eventName](this[0]);
  };
  
  export {renderComponent, expect};
  