From 5724d051b24bbef35e84095a9d2a53abdef09e57 Mon Sep 17 00:00:00 2001 From: Leangseu Kim Date: Tue, 21 Mar 2023 15:10:19 -0400 Subject: [PATCH] fix: begin button disable when audit access expire --- .../components/CourseCardActions/BeginCourseButton.jsx | 4 ++-- .../CourseCardActions/BeginCourseButton.test.jsx | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/containers/CourseCard/components/CourseCardActions/BeginCourseButton.jsx b/src/containers/CourseCard/components/CourseCardActions/BeginCourseButton.jsx index f13525a..0c96b1d 100644 --- a/src/containers/CourseCard/components/CourseCardActions/BeginCourseButton.jsx +++ b/src/containers/CourseCard/components/CourseCardActions/BeginCourseButton.jsx @@ -11,7 +11,7 @@ import messages from './messages'; export const BeginCourseButton = ({ cardId }) => { const { formatMessage } = useIntl(); const { homeUrl } = reduxHooks.useCardCourseRunData(cardId); - const { hasAccess } = reduxHooks.useCardEnrollmentData(cardId); + const { hasAccess, isAudit, isAuditAccessExpired } = reduxHooks.useCardEnrollmentData(cardId); const { isMasquerading } = reduxHooks.useMasqueradeData(); const handleClick = reduxHooks.useTrackCourseEvent( track.course.enterCourseClicked, @@ -20,7 +20,7 @@ export const BeginCourseButton = ({ cardId }) => { ); return ( ({ jest.mock('hooks', () => ({ reduxHooks: { useCardCourseRunData: jest.fn(() => ({ homeUrl: 'home-url' })), - useCardEnrollmentData: jest.fn(() => ({ hasAccess: true })), + useCardEnrollmentData: jest.fn(() => ({ hasAccess: true, isAudit: false, isAuditAccessExpired: false })), useMasqueradeData: jest.fn(() => ({ isMasquerading: false })), useTrackCourseEvent: jest.fn( (eventName, cardId, upgradeUrl) => ({ trackCourseEvent: { eventName, cardId, upgradeUrl } }), @@ -66,6 +66,11 @@ describe('BeginCourseButton', () => { wrapper = shallow(); expect(wrapper.prop(htmlProps.disabled)).toEqual(true); }); + test('audit access expired', () => { + reduxHooks.useCardEnrollmentData.mockReturnValueOnce({ isAudit: true, isAuditAccessExpired: true }); + wrapper = shallow(); + expect(wrapper.prop(htmlProps.disabled)).toEqual(true); + }); }); }); });