From aaf28565738766a613b5aa70021320c20726a0d4 Mon Sep 17 00:00:00 2001 From: Carla Duarte Date: Mon, 20 Dec 2021 09:03:30 -0500 Subject: [PATCH] fix: round grades on progress tab (#778) --- src/course-home/data/__snapshots__/redux.test.js.snap | 2 +- src/course-home/data/api.js | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/course-home/data/__snapshots__/redux.test.js.snap b/src/course-home/data/__snapshots__/redux.test.js.snap index ab8ac292..46e507e4 100644 --- a/src/course-home/data/__snapshots__/redux.test.js.snap +++ b/src/course-home/data/__snapshots__/redux.test.js.snap @@ -607,7 +607,7 @@ Object { "gradingPolicy": Object { "assignmentPolicies": Array [ Object { - "averageGrade": 1, + "averageGrade": "1.00", "numDroppable": 1, "shortLabel": "HW", "type": "Homework", diff --git a/src/course-home/data/api.js b/src/course-home/data/api.js index 6988bc32..f2133ac2 100644 --- a/src/course-home/data/api.js +++ b/src/course-home/data/api.js @@ -15,7 +15,10 @@ const calculateAssignmentTypeGrades = (points, assignmentWeight, numDroppable) = let averageGrade = 0; let weightedGrade = 0; if (points.length) { - averageGrade = points.reduce((a, b) => a + b, 0) / points.length; + // Calculate the average grade for the assignment and round it. This rounding is not ideal and does not accurately + // reflect what a learner's grade would be, however, we must have parity with the current grading behavior that + // exists in edx-platform. + averageGrade = (points.reduce((a, b) => a + b, 0) / points.length).toFixed(2); weightedGrade = averageGrade * assignmentWeight; } return { averageGrade, weightedGrade };