From 0b14be613ddf0bbf998ddf5f3161e08638bddbdd Mon Sep 17 00:00:00 2001 From: Daniel Wong Date: Wed, 21 Jan 2026 17:55:14 -0600 Subject: [PATCH] fix: set correct final grade value for ORA summary endpoint --- lms/djangoapps/instructor/ora.py | 4 +-- .../instructor/tests/test_api_v2.py | 26 +++++++++++++++++++ .../instructor/views/serializers_v2.py | 2 +- 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/lms/djangoapps/instructor/ora.py b/lms/djangoapps/instructor/ora.py index 9798176838..5a78a15034 100644 --- a/lms/djangoapps/instructor/ora.py +++ b/lms/djangoapps/instructor/ora.py @@ -12,7 +12,7 @@ DEFAULT_ORA_METRICS = { 'self': 0, 'waiting': 0, 'staff': 0, - 'final_grade_received': 0, + 'done': 0, } @@ -93,5 +93,5 @@ def get_ora_summary(course): summary['self'] += item['self'] summary['waiting'] += item['waiting'] summary['staff'] += item['staff'] - summary['final_grade_received'] += item['final_grade_received'] + summary['final_grade_received'] += item['done'] return summary diff --git a/lms/djangoapps/instructor/tests/test_api_v2.py b/lms/djangoapps/instructor/tests/test_api_v2.py index b2ce1bacc1..3821ac0e05 100644 --- a/lms/djangoapps/instructor/tests/test_api_v2.py +++ b/lms/djangoapps/instructor/tests/test_api_v2.py @@ -1055,6 +1055,32 @@ class ORASummaryViewTest(ORABaseViewsTest): course_id = str(self.course_key) return reverse(self.view_name, kwargs={'course_id': course_id}) + @patch('openassessment.data.OraAggregateData.collect_ora2_responses') + def test_get_ora_summary_with_final_grades(self, mock_get_responses): + """Test retrieving the ORA summary with final grades.""" + + mock_get_responses.return_value = { + self.ora_usage_key: { + "done": 3, + "total": 2, + "total_responses": 0, + "training": 0, + "peer": 0, + "self": 0, + "waiting": 0, + "staff": 0, + } + } + + response = self.client.get( + self._get_url() + ) + + assert response.status_code == 200 + data = response.data + + assert data['final_grade_received'] == 3 + def test_get_ora_summary(self): """Test retrieving the ORA summary.""" diff --git a/lms/djangoapps/instructor/views/serializers_v2.py b/lms/djangoapps/instructor/views/serializers_v2.py index 9f0996a747..4140790072 100644 --- a/lms/djangoapps/instructor/views/serializers_v2.py +++ b/lms/djangoapps/instructor/views/serializers_v2.py @@ -432,7 +432,7 @@ class ORASerializer(serializers.Serializer): self = serializers.IntegerField() waiting = serializers.IntegerField() staff = serializers.IntegerField() - final_grade_received = serializers.IntegerField() + final_grade_received = serializers.IntegerField(source="done") class ORASummarySerializer(serializers.Serializer):