redux-retype-actions
Version:
Change the type of your actions
39 lines (37 loc) • 1.14 kB
JavaScript
;
var _ = require('./');
describe('redux-retype-actions', function () {
it('enables action retyping', function () {
var reducer = function reducer(state, action) {
switch (action.type) {
case 'MAYBE':
return action.payload;
case '1':
return 1;
case '0':
return 0;
default:
return state;
}
};
var enabledReducer = (0, _.enableRetyping)(reducer);
var trueAction = {
type: '1'
};
var falseAction = {
type: '0'
};
var maybeAction = {
type: '2'
};
var renameTrueAction = (0, _.retypeAction)('TRUE', trueAction);
var renameFalseAction = (0, _.retypeAction)('FALSE', falseAction);
var renameMaybeAction = (0, _.retypeAction)('MAYBE', maybeAction, 2);
expect(enabledReducer({}, renameTrueAction)).toBe(1);
expect(enabledReducer({}, renameTrueAction)).toBe(1);
expect(enabledReducer({}, renameMaybeAction)).toBe(2);
expect(renameTrueAction.type).toBe('TRUE');
expect(renameFalseAction.type).toBe('FALSE');
expect(renameMaybeAction.type).toBe('MAYBE');
});
});