import { shallow, mount } from 'enzyme'
import React from 'react'
import { BrowserRouter } from 'react-router-dom'
import { shape } from 'prop-types'
export function shallowWithStore (component, store) {
const context = {
store,
}
return shallow(component, { context })
}
export function mountWithStore (component, store) {
const context = {
store,
}
return mount(component, { context })
}
export function mountWithRouter (node) {
// Instantiate router context
const router = {
history: new BrowserRouter().history,
route: {
location: {},
match: {},
},
}
const createContext = () => ({
context: { router, t: () => {} },
childContextTypes: { router: shape({}), t: () => {} },
})
const Wrapper = () => (
{node}
)
return mount(, createContext())
}