diff --git a/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.jsx b/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.jsx
index c5a3773..1bae25f 100644
--- a/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.jsx
+++ b/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.jsx
@@ -40,6 +40,21 @@ export const CertificateBanner = ({ cardId }) => {
);
}
+ if (certificate.isDownloadable) {
+ return (
+
+ {formatMessage(messages.certReady)}
+ {certificate.certPreviewUrl && (
+ <>
+ {' '}
+
+ {formatMessage(messages.viewCertificate)}
+
+ >
+ )}
+
+ );
+ }
if (!isPassing) {
if (isAudit) {
return (
@@ -63,17 +78,6 @@ export const CertificateBanner = ({ cardId }) => {
);
}
- if (certificate.isDownloadable) {
- return (
-
- {formatMessage(messages.certReady)}
- {' '}
-
- {formatMessage(messages.viewCertificate)}
-
-
- );
- }
if (certificate.isEarnedButUnavailable) {
return (
diff --git a/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.test.jsx b/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.test.jsx
index 44369de..cf8c20d 100644
--- a/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.test.jsx
+++ b/src/containers/CourseCard/components/CourseCardBanners/CertificateBanner.test.jsx
@@ -54,6 +54,7 @@ describe('CertificateBanner', () => {
reduxHooks.useCardCourseRunData.mockReturnValueOnce({ ...defaultCourseRun, ...courseRun });
return shallow();
};
+ /** TODO: Update tests to validate snapshots **/
describe('snapshot', () => {
test('is restricted', () => {
const wrapper = createWrapper({
@@ -74,6 +75,20 @@ describe('CertificateBanner', () => {
});
expect(wrapper).toMatchSnapshot();
});
+ test('is passing and is downloadable', () => {
+ const wrapper = createWrapper({
+ grade: { isPassing: true },
+ certificate: { isDownloadable: true },
+ });
+ expect(wrapper).toMatchSnapshot();
+ });
+ test('not passing and is downloadable', () => {
+ const wrapper = createWrapper({
+ grade: { isPassing: false },
+ certificate: { isDownloadable: true },
+ });
+ expect(wrapper).toMatchSnapshot();
+ });
test('not passing and audit', () => {
const wrapper = createWrapper({
enrollment: {
@@ -92,17 +107,6 @@ describe('CertificateBanner', () => {
const wrapper = createWrapper({});
expect(wrapper).toMatchSnapshot();
});
- test('is passing and is downloadable', () => {
- const wrapper = createWrapper({
- grade: {
- isPassing: true,
- },
- certificate: {
- isDownloadable: true,
- },
- });
- expect(wrapper).toMatchSnapshot();
- });
test('is passing and is earned but unavailable', () => {
const wrapper = createWrapper({
grade: {
diff --git a/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CertificateBanner.test.jsx.snap b/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CertificateBanner.test.jsx.snap
index 0b7479e..b337532 100644
--- a/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CertificateBanner.test.jsx.snap
+++ b/src/containers/CourseCard/components/CourseCardBanners/__snapshots__/CertificateBanner.test.jsx.snap
@@ -6,12 +6,6 @@ exports[`CertificateBanner snapshot is passing and is downloadable 1`] = `
variant="success"
>
Congratulations. Your certificate is ready.
-
-
- View Certificate.
-
`;
@@ -113,6 +107,15 @@ exports[`CertificateBanner snapshot not passing and has finished 1`] = `
`;
+exports[`CertificateBanner snapshot not passing and is downloadable 1`] = `
+
+ Congratulations. Your certificate is ready.
+
+`;
+
exports[`CertificateBanner snapshot not passing and not audit and not finished 1`] = `