From 40cf6ba4135824801cbdddfc277324614bbe7725 Mon Sep 17 00:00:00 2001 From: alangsto <46360176+alangsto@users.noreply.github.com> Date: Thu, 7 Jan 2021 08:34:03 -0500 Subject: [PATCH] updated endpoint for verifications to include receipt id (#25999) --- openedx/core/djangoapps/user_api/serializers.py | 7 +++++++ .../user_api/verification_api/tests/test_views.py | 9 ++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/openedx/core/djangoapps/user_api/serializers.py b/openedx/core/djangoapps/user_api/serializers.py index a5d26fe45ac..1849d05284a 100644 --- a/openedx/core/djangoapps/user_api/serializers.py +++ b/openedx/core/djangoapps/user_api/serializers.py @@ -107,6 +107,7 @@ class IDVerificationDetailsSerializer(serializers.Serializer): expiration_datetime = serializers.DateTimeField() message = serializers.SerializerMethodField() updated_at = serializers.DateTimeField() + receipt_id = serializers.SerializerMethodField() def get_type(self, obj): if isinstance(obj, SoftwareSecurePhotoVerification): @@ -123,3 +124,9 @@ class IDVerificationDetailsSerializer(serializers.Serializer): return obj.reason else: return '' + + def get_receipt_id(self, obj): + if isinstance(obj, SoftwareSecurePhotoVerification): + return obj.receipt_id + else: + return None diff --git a/openedx/core/djangoapps/user_api/verification_api/tests/test_views.py b/openedx/core/djangoapps/user_api/verification_api/tests/test_views.py index 28d47548bf8..4d79121c860 100644 --- a/openedx/core/djangoapps/user_api/verification_api/tests/test_views.py +++ b/openedx/core/djangoapps/user_api/verification_api/tests/test_views.py @@ -132,7 +132,8 @@ class VerificationsDetailsViewTests(VerificationStatusViewTestsMixin, TestCase): 'status': self.photo_verification.status, 'expiration_datetime': '{}Z'.format(kwargs.get('expected_expires').isoformat()), 'message': '', - 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()) + 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()), + 'receipt_id': self.photo_verification.receipt_id, }] def test_multiple_verification_types(self): @@ -157,6 +158,7 @@ class VerificationsDetailsViewTests(VerificationStatusViewTestsMixin, TestCase): 'expiration_datetime': '{}Z'.format(expected_expires.isoformat()), 'message': self.photo_verification.error_msg, 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()), + 'receipt_id': self.photo_verification.receipt_id }, { 'type': 'SSO', @@ -164,6 +166,7 @@ class VerificationsDetailsViewTests(VerificationStatusViewTestsMixin, TestCase): 'expiration_datetime': '{}Z'.format(expected_expires.isoformat()), 'message': '', 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()), + 'receipt_id': None, }, { 'type': 'Manual', @@ -171,6 +174,7 @@ class VerificationsDetailsViewTests(VerificationStatusViewTestsMixin, TestCase): 'expiration_datetime': '{}Z'.format(expected_expires.isoformat()), 'message': self.manual_verification.reason, 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()), + 'receipt_id': None, }, ] self.assertEqual(json.loads(response.content.decode('utf-8')), expected) @@ -194,6 +198,7 @@ class VerificationsDetailsViewTests(VerificationStatusViewTestsMixin, TestCase): 'expiration_datetime': '{}Z'.format(expected_expires.isoformat()), 'message': self.photo_verification.error_msg, 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()), + 'receipt_id': self.photo_verification.receipt_id, }, { 'type': 'Software Secure', @@ -201,6 +206,7 @@ class VerificationsDetailsViewTests(VerificationStatusViewTestsMixin, TestCase): 'expiration_datetime': '{}Z'.format(expected_expires.isoformat()), 'message': second_ss_photo_verification.error_msg, 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()), + 'receipt_id': second_ss_photo_verification.receipt_id, }, { 'type': 'SSO', @@ -208,6 +214,7 @@ class VerificationsDetailsViewTests(VerificationStatusViewTestsMixin, TestCase): 'expiration_datetime': '{}Z'.format(expected_expires.isoformat()), 'message': '', 'updated_at': '{}Z'.format(self.CREATED_AT.isoformat()), + 'receipt_id': None, }, ] self.assertEqual(json.loads(response.content.decode('utf-8')), expected) -- GitLab