Я работаю над приложением Redux и пытаюсь создать шпиона, используя Jasmine на экспортированной по умолчанию ES6-функции. Я попытался несколько способов отслеживания функции, в том числе использование подстановочного импорта для доступа к свойству "default" импорта, но ничто из того, что я пробовал, пока не работает. Ниже приведен пример, где я хочу протестировать widgets.js
и шпионить за функцией виджетов. Есть ли способ достичь этого, не widget.js
функции из widget.js
?
widget.js
import { Map } from 'immutable';
import { CREATE_WIDGET } from 'actions';
const initialState = Map({
id: undefined,
name: undefined
});
export default function widget(state=initialState, action) {
switch (action.type) {
case CREATE_WIDGET:
return state.update((widget) => widget.merge(action.widget));
default:
return state;
}
}
widgets.js
import { OrderedMap } from 'immutable';
import { CREATE_ROOM } from 'actions';
import widget from './widget';
const initialState = OrderedMap();
export default function widgets(state=initialState, action={}) {
switch (action.type) {
case CREATE_ROOM:
return state.set(action.widget.id, widget(undefined, action));
default:
return state;
}
}