From 115ef77e37a735bddac7085601b43c8725dddfc5 Mon Sep 17 00:00:00 2001 From: leangseu-edx <83240113+leangseu-edx@users.noreply.github.com> Date: Tue, 25 Oct 2022 13:19:58 -0400 Subject: [PATCH] chore: update course selector (#51) --- .../components/CourseCardBanners/CourseBanner.jsx | 3 +-- .../CourseCardBanners/CourseBanner.test.jsx | 13 ++----------- .../__snapshots__/CourseBanner.test.jsx.snap | 2 +- src/data/redux/app/selectors/courseCard.js | 3 +-- src/data/redux/app/selectors/courseCard.test.js | 8 ++------ 5 files changed, 7 insertions(+), 22 deletions(-) diff --git a/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx b/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx index daf688b..9d74122 100644 --- a/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx +++ b/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx @@ -16,7 +16,6 @@ export const CourseBanner = ({ cardId }) => { coursewareAccess = {}, } = appHooks.useCardEnrollmentData(cardId); const courseRun = appHooks.useCardCourseRunData(cardId); - const course = appHooks.useCardCourseData(cardId); const { formatMessage, formatDate } = useIntl(); const { hasUnmetPrerequisites, isStaff, isTooEarly } = coursewareAccess; @@ -48,7 +47,7 @@ export const CourseBanner = ({ cardId }) => { {formatMessage(messages.upgradeDeadlinePassed)} {' '} - + {formatMessage(messages.exploreCourseDetails)} diff --git a/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.test.jsx b/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.test.jsx index bb1abf5..35d12a0 100644 --- a/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.test.jsx +++ b/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.test.jsx @@ -11,7 +11,6 @@ import messages from './messages'; jest.mock('components/Banner', () => 'Banner'); jest.mock('data/redux', () => ({ hooks: { - useCardCourseData: jest.fn(), useCardCourseRunData: jest.fn(), useCardEnrollmentData: jest.fn(), }, @@ -34,21 +33,14 @@ const enrollmentData = { const courseRunData = { isActive: false, startDate: '11/11/3030', -}; -const courseData = { - website: 'test-course-website', + marketingUrl: 'marketing-url', }; const render = (overrides = {}) => { const { - course = {}, courseRun = {}, enrollment = {}, } = overrides; - appHooks.useCardCourseData.mockReturnValueOnce({ - ...courseData, - ...course, - }); appHooks.useCardCourseRunData.mockReturnValueOnce({ ...courseRunData, ...courseRun, @@ -63,7 +55,6 @@ const render = (overrides = {}) => { describe('CourseBanner', () => { test('initializes data with course number from enrollment, course and course run data', () => { render(); - expect(appHooks.useCardCourseData).toHaveBeenCalledWith(cardId); expect(appHooks.useCardCourseRunData).toHaveBeenCalledWith(cardId); expect(appHooks.useCardEnrollmentData).toHaveBeenCalledWith(cardId); }); @@ -106,7 +97,7 @@ describe('CourseBanner', () => { expect(el.text()).toContain(messages.upgradeDeadlinePassed.defaultMessage); const link = el.find(Hyperlink); expect(link.text()).toEqual(messages.exploreCourseDetails.defaultMessage); - expect(link.props().destination).toEqual(courseData.website); + expect(link.props().destination).toEqual(courseRunData.marketingUrl); }); }); test('no display if audit access not expired and (course is not active or can upgrade)', () => { diff --git a/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CourseBanner.test.jsx.snap b/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CourseBanner.test.jsx.snap index 7557109..990d78a 100644 --- a/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CourseBanner.test.jsx.snap +++ b/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CourseBanner.test.jsx.snap @@ -30,7 +30,7 @@ exports[`CourseBanner course run active and cannot upgrade snapshot: (upgradseDe Your upgrade deadline for this course has passed. To upgrade, enroll in a session that is farther in the future. Explore course details. diff --git a/src/data/redux/app/selectors/courseCard.js b/src/data/redux/app/selectors/courseCard.js index f4a9c98..afafd38 100644 --- a/src/data/redux/app/selectors/courseCard.js +++ b/src/data/redux/app/selectors/courseCard.js @@ -34,7 +34,6 @@ export const courseCard = StrictDict({ bannerImgSrc: baseAppUrl(course.bannerImgSrc), courseNumber: course.courseNumber, courseName: course.courseName, - website: course.website, socialShareUrl: course.socialShareUrl, }), ), @@ -51,7 +50,6 @@ export const courseCard = StrictDict({ courseId: courseRun.courseId, isArchived: courseRun.isArchived, isStarted: courseRun.isStarted, - isFinished: courseRun.isFinished, minPassingGrade: Math.floor(courseRun.minPassingGrade * 100), @@ -86,6 +84,7 @@ export const courseCard = StrictDict({ isVerified: enrollment.isVerified, isEmailEnabled: enrollment.isEmailEnabled, + hasOptedOutOfEmail: enrollment.hasOptedOutOfEmail, }; }, ), diff --git a/src/data/redux/app/selectors/courseCard.test.js b/src/data/redux/app/selectors/courseCard.test.js index a4a85eb..0af5220 100644 --- a/src/data/redux/app/selectors/courseCard.test.js +++ b/src/data/redux/app/selectors/courseCard.test.js @@ -107,7 +107,6 @@ describe('courseCard selectors module', () => { bannerImgSrc: 'test-banner-img-src', courseNumber: 'test-course-number', courseName: 'test-course-name', - website: 'test-website', socialShareUrl: 'test-social-share-url', }); }); @@ -117,10 +116,9 @@ describe('courseCard selectors module', () => { it('passes bannerImgSrc, converted to a baseAppUrl', () => { expect(selected.bannerImgSrc).toEqual(baseAppUrl(testData.bannerImgSrc)); }); - it('passes [courseNumber, courseName, website, socialShareUrl]', () => { + it('passes [courseNumber, courseName, socialShareUrl]', () => { expect(selected.courseNumber).toEqual(testData.courseNumber); expect(selected.courseName).toEqual(testData.courseName); - expect(selected.website).toEqual(testData.website); expect(selected.socialShareUrl).toEqual(testData.socialShareUrl); }); }); @@ -149,7 +147,6 @@ describe('courseCard selectors module', () => { courseId: 'test-course-id', isArchived: 'test-is-archived', isStarted: 'test-is-started', - isFinished: 'test-is-finished', minPassingGrade: 0.9354, @@ -169,11 +166,10 @@ describe('courseCard selectors module', () => { expect(selected.endDate).toEqual(new Date(testData.endDate)); expect(selected.startDate).toEqual(new Date(testData.startDate)); }); - it('passes [courseId, isArchived, isStarted, isFinished]', () => { + it('passes [courseId, isArchived, isStarted]', () => { expect(selected.courseId).toEqual(testData.courseId); expect(selected.isArchived).toEqual(testData.isArchived); expect(selected.isStarted).toEqual(testData.isStarted); - expect(selected.isFinished).toEqual(testData.isFinished); }); it('passes minPassingGrade floored from float to a percentage value', () => { expect(selected.minPassingGrade).toEqual(93);