redux-test-utils
Version:
Test utils to simplify mocking for redux.
50 lines (49 loc) • 1.52 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createMockStore = exports.emptyStore = void 0;
var DispatchMock_1 = require("./DispatchMock");
var isFunction = function (arg) { return typeof arg === 'function'; };
exports.emptyStore = function () { return ({
dispatch: function (action) {
return action;
},
getState: function () {
return {};
},
subscribe: function () {
return function () {
// Dummy
};
},
replaceReducer: function () {
// Dummy
},
}); };
exports.createMockStore = function (state) {
var dispatchMock = DispatchMock_1.createMockDispatch();
var subscribers = [];
return {
getState: function () {
return state;
},
replaceReducer: function () {
// Do nothing since it is not needed in tests
},
subscribe: function (subscriber) {
if (isFunction(subscriber)) {
subscribers.push(subscriber);
}
return subscriber;
},
dispatch: function (action) {
for (var i = 0; i < subscribers.length; i++) {
subscribers[i]();
}
return dispatchMock.dispatch(action);
},
getActions: dispatchMock.getActions,
getAction: dispatchMock.getAction,
isActionDispatched: dispatchMock.isActionDispatched,
isActionTypeDispatched: dispatchMock.isActionTypeDispatched,
};
};