diff --git a/src/containers/EmailSettingsModal/hooks.js b/src/containers/EmailSettingsModal/hooks.js index 7df1bce..1d07ce5 100644 --- a/src/containers/EmailSettingsModal/hooks.js +++ b/src/containers/EmailSettingsModal/hooks.js @@ -14,24 +14,24 @@ export const useEmailData = ({ cardId, dispatch, }) => { - const { isEmailEnabled } = appHooks.useCardEnrollmentData(cardId); - const [toggleValue, setToggleValue] = module.state.toggle(isEmailEnabled); + const { hasOptedOutOfEmail } = appHooks.useCardEnrollmentData(cardId); + const [isOptedOut, setIsOptedOut] = module.state.toggle(hasOptedOutOfEmail); const onToggle = React.useCallback( - () => setToggleValue(!toggleValue), - [setToggleValue, toggleValue], + () => setIsOptedOut(!isOptedOut), + [setIsOptedOut, isOptedOut], ); const save = React.useCallback( () => { - dispatch(thunkActions.app.updateEmailSettings(cardId, toggleValue)); + dispatch(thunkActions.app.updateEmailSettings(cardId, isOptedOut)); closeModal(); }, - [cardId, closeModal, dispatch, toggleValue], + [cardId, closeModal, dispatch, isOptedOut], ); return { onToggle, save, - toggleValue, + isOptedOut, }; }; diff --git a/src/containers/EmailSettingsModal/hooks.test.js b/src/containers/EmailSettingsModal/hooks.test.js index 5947faf..307e25d 100644 --- a/src/containers/EmailSettingsModal/hooks.test.js +++ b/src/containers/EmailSettingsModal/hooks.test.js @@ -31,7 +31,7 @@ describe('EmailSettingsModal hooks', () => { describe('useEmailData', () => { beforeEach(() => { state.mock(); - appHooks.useCardEnrollmentData.mockReturnValueOnce({ isEmailEnabled: true }); + appHooks.useCardEnrollmentData.mockReturnValueOnce({ hasOptedOutOfEmail: true }); out = hooks.useEmailData({ closeModal, cardId, dispatch }); }); afterEach(state.restore); @@ -40,29 +40,29 @@ describe('EmailSettingsModal hooks', () => { expect(appHooks.useCardEnrollmentData).toHaveBeenCalledWith(cardId); }); - test('initializes toggle value to cardData.isEmailEnabled', () => { + test('initializes toggle value to cardData.hasOptedOutOfEmail', () => { state.expectInitializedWith(state.keys.toggle, true); - expect(out.toggleValue).toEqual(true); + expect(out.isOptedOut).toEqual(true); - appHooks.useCardEnrollmentData.mockReturnValueOnce({ isEmailEnabled: false }); + appHooks.useCardEnrollmentData.mockReturnValueOnce({ hasOptedOutOfEmail: false }); out = hooks.useEmailData({ closeModal, cardId }); state.expectInitializedWith(state.keys.toggle, false); - expect(out.toggleValue).toEqual(false); + expect(out.isOptedOut).toEqual(false); }); describe('onToggle - returned callback', () => { it('is based on toggle state value', () => { - expect(out.onToggle.useCallback.prereqs).toEqual([state.setState.toggle, out.toggleValue]); + expect(out.onToggle.useCallback.prereqs).toEqual([state.setState.toggle, out.isOptedOut]); }); it('sets toggle state value to opposite current value', () => { out.onToggle.useCallback.cb(); - expect(state.setState.toggle).toHaveBeenCalledWith(!out.toggleValue); + expect(state.setState.toggle).toHaveBeenCalledWith(!out.isOptedOut); }); }); describe('save', () => { it('calls dispatch with thunkActions.app.updateEmailSettings', () => { out.save.useCallback.cb(); - expect(thunkActions.app.updateEmailSettings).toHaveBeenCalledWith(cardId, out.toggleValue); - expect(dispatch).toHaveBeenCalledWith(thunkActions.app.updateEmailSettings(cardId, out.toggleValue)); + expect(thunkActions.app.updateEmailSettings).toHaveBeenCalledWith(cardId, out.isOptedOut); + expect(dispatch).toHaveBeenCalledWith(thunkActions.app.updateEmailSettings(cardId, out.isOptedOut)); }); it('calls closeModal', () => { out.save.useCallback.cb(); diff --git a/src/containers/EmailSettingsModal/index.jsx b/src/containers/EmailSettingsModal/index.jsx index 58ac768..f0fdebd 100644 --- a/src/containers/EmailSettingsModal/index.jsx +++ b/src/containers/EmailSettingsModal/index.jsx @@ -22,7 +22,7 @@ export const EmailSettingsModal = ({ }) => { const dispatch = useDispatch(); const { - toggleValue, + isOptedOut, onToggle, save, } = useEmailData({ dispatch, closeModal, cardId }); @@ -37,8 +37,8 @@ export const EmailSettingsModal = ({ >
{formatMessage(messages.description)}