diff --git a/src/containers/CourseCard/components/CourseCardMenu/__snapshots__/index.test.jsx.snap b/src/containers/CourseCard/components/CourseCardMenu/__snapshots__/index.test.jsx.snap
index 44fe18c..7ef6a6c 100644
--- a/src/containers/CourseCard/components/CourseCardMenu/__snapshots__/index.test.jsx.snap
+++ b/src/containers/CourseCard/components/CourseCardMenu/__snapshots__/index.test.jsx.snap
@@ -26,9 +26,18 @@ exports[`CourseCardMenu enrolled, share enabled, email setting enable snapshot 1
>
Email settings
+
+
+ Share to Facebook
+
+
Email settings
+
+
+ Share to Facebook
+
+
{
const { courseName } = appHooks.useCardCourseData(cardId);
const { isEnrolled, isEmailEnabled } = appHooks.useCardEnrollmentData(cardId);
- const { twitter } = appHooks.useCardSocialSettingsData(cardId);
+ const { twitter, facebook } = appHooks.useCardSocialSettingsData(cardId);
const { isMasquerading } = appHooks.useMasqueradeData();
const handleTwitterShare = appHooks.useTrackCourseEvent(
track.socialShare,
cardId,
'twitter',
);
+ const handleFacebookShare = appHooks.useTrackCourseEvent(
+ track.socialShare,
+ cardId,
+ 'facebook',
+ );
const emailSettingsModal = useEmailSettings();
const unenrollModal = useUnenrollData();
@@ -65,21 +70,20 @@ export const CourseCardMenu = ({ cardId }) => {
{formatMessage(messages.emailSettings)}
)}
- {/* Disabled pending PM decision on missing quote param in updated FB api.
- {facebook.isEnabled && (
-
-
- {formatMessage(messages.shareToFacebook)}
-
-
- )}
- */}
+ {facebook.isEnabled && (
+
+
+ {formatMessage(messages.shareToFacebook)}
+
+
+ )}
{twitter.isEnabled && (
({
useCardEnrollmentData: jest.fn(),
useCardSocialSettingsData: jest.fn(),
useMasqueradeData: jest.fn(),
- useTrackCourseEvent: jest.fn(),
+ useTrackCourseEvent: (_, __, site) => jest.fn().mockName(`${site}ShareClick`),
},
}));
jest.mock('./hooks', () => ({
@@ -60,7 +60,6 @@ describe('CourseCardMenu', () => {
appHooks.useCardCourseData.mockReturnValue({ courseName });
appHooks.useCardEnrollmentData.mockReturnValue({ isEnrolled: true, isEmailEnabled: true });
appHooks.useMasqueradeData.mockReturnValue({ isMasquerading: false });
- appHooks.useTrackCourseEvent.mockReturnValue(jest.fn().mockName('handleTwitterShare'));
});
describe('enrolled, share enabled, email setting enable', () => {
beforeEach(() => {
@@ -70,7 +69,9 @@ describe('CourseCardMenu', () => {
expect(wrapper).toMatchSnapshot();
});
it('renders share buttons', () => {
- // expect(wrapper.find('FacebookShareButton').length).toEqual(1);
+ el = wrapper.find('FacebookShareButton');
+ expect(el.length).toEqual(1);
+ expect(el.prop('url')).toEqual('facebook-share-url');
el = wrapper.find('TwitterShareButton');
expect(el.length).toEqual(1);
expect(el.prop('url')).toEqual('twitter-share-url');
@@ -93,7 +94,7 @@ describe('CourseCardMenu', () => {
appHooks.useCardSocialSettingsData.mockReturnValueOnce({
...defaultSocialShare,
twitter: { ...defaultSocialShare.twitter, isEnabled: false },
- // facebook: { ...defaultSocialShare.facebook, isEnabled: false },
+ facebook: { ...defaultSocialShare.facebook, isEnabled: false },
});
appHooks.useCardEnrollmentData.mockReturnValueOnce({ isEnrolled: false, isEmailEnabled: false });
wrapper = shallow();
@@ -102,7 +103,7 @@ describe('CourseCardMenu', () => {
expect(wrapper).toMatchSnapshot();
});
it('does not renders share buttons', () => {
- // expect(wrapper.find('FacebookShareButton').length).toEqual(0);
+ expect(wrapper.find('FacebookShareButton').length).toEqual(0);
expect(wrapper.find('TwitterShareButton').length).toEqual(0);
});
it('does not render unenroll modal toggle', () => {
@@ -123,7 +124,7 @@ describe('CourseCardMenu', () => {
expect(wrapper).toMatchSnapshot();
});
it('renders share buttons', () => {
- // expect(wrapper.find('FacebookShareButton').length).toEqual(1);
+ expect(wrapper.find('FacebookShareButton').length).toEqual(1);
el = wrapper.find('TwitterShareButton');
expect(el.length).toEqual(1);
expect(el.prop('url')).toEqual('twitter-share-url');