diff --git a/app/soapbox/reducers/__tests__/notifications-test.js b/app/soapbox/reducers/__tests__/notifications-test.js index 21410a0f9..630aa61e3 100644 --- a/app/soapbox/reducers/__tests__/notifications-test.js +++ b/app/soapbox/reducers/__tests__/notifications-test.js @@ -28,6 +28,7 @@ import { NOTIFICATIONS_MARK_READ_REQUEST, } from 'soapbox/actions/notifications'; import { TIMELINE_DELETE } from 'soapbox/actions/timelines'; +import { applyActions } from 'soapbox/test_helpers'; import reducer from '../notifications'; @@ -128,7 +129,7 @@ describe('notifications reducer', () => { }]; // Setup by expanding, then calling `NOTIFICATIONS_FILTER_SET` - const result = actions.reduce((state, action) => reducer(state, action), initialState); + const result = applyActions(initialState, actions, reducer); // Setting the filter wipes notifications expect(result.items.isEmpty()).toBe(true); @@ -514,7 +515,7 @@ describe('notifications reducer', () => { }]; // Setup by expanding, then calling `NOTIFICATIONS_FILTER_SET` - const result = actions.reduce((state, action) => reducer(state, action), initialState); + const result = applyActions(initialState, actions, reducer); expect(result.items.size).toEqual(2); expect(result.items.get('5')).toBe(undefined); diff --git a/app/soapbox/test_helpers.js b/app/soapbox/test_helpers.js index 719c29129..c9de38dc4 100644 --- a/app/soapbox/test_helpers.js +++ b/app/soapbox/test_helpers.js @@ -33,3 +33,8 @@ export const createComponent = (children, props = {}) => { , ); }; + +// Apply actions to the state, one at a time +export const applyActions = (state, actions, reducer) => { + return actions.reduce((state, action) => reducer(state, action), state); +};