我正在使用“ava”框架进行反应测试,这是一段 package.json:
"babel": {
"presets": [
"es2015",
"stage-2",
"react"
]
},
"ava": {
"babel": "inherit",
"require": [
"babel-register"
]
}
测试代码:
import store from '../../app/redux/store';
import test from 'ava';
import * as c from '../../app/constants'
test('languageReducer() should correctly change the dictionary', t => {
store.dispatch({
type: c.LOCALIZE_CHANGE_DICTIONARY,
dictionary: {
a: 1,
b: 2,
c: 3
}
});
t.DeepEqual(store.getState().localizeReducer.dictionary, {a: 1, b: 2, c: 3});
t.is(10, 10);
});
并且有错误听起来像:
unsubscribeHistory = history.listen(function (location) {
^
TypeError: Cannot read property 'listen' of undefined
at middleware (/Users/nikita/WebstormProjects/crm_panel/node_modules/redux-simple- router/lib/index.js:72:33)
我应该怎么做才能让我的测试访问全局命名空间(窗口、历史等)?谢谢