From 889f7d492d5b2a57ee84a2d3b120d69423d64d7f Mon Sep 17 00:00:00 2001 From: usama sadiq Date: Thu, 9 Jan 2020 16:30:19 +0500 Subject: [PATCH] Updated LtiBackend.authenticate() method Added a positional `request` arugment in the function header. --- lms/djangoapps/lti_provider/tests/test_users.py | 8 ++++++++ lms/djangoapps/lti_provider/users.py | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lms/djangoapps/lti_provider/tests/test_users.py b/lms/djangoapps/lti_provider/tests/test_users.py index 6191c0024c..453ec1bd06 100644 --- a/lms/djangoapps/lti_provider/tests/test_users.py +++ b/lms/djangoapps/lti_provider/tests/test_users.py @@ -199,9 +199,13 @@ class LtiBackendTest(TestCase): lti_user_id=self.lti_user_id, edx_user=self.edx_user ).save() + self.old_user = UserFactory.create() + self.request = RequestFactory().post('/') + self.request.user = self.old_user def test_valid_user_authenticates(self): user = users.LtiBackend().authenticate( + self.request, username=self.edx_user.username, lti_user_id=self.lti_user_id, lti_consumer=self.lti_consumer @@ -210,6 +214,7 @@ class LtiBackendTest(TestCase): def test_missing_user_returns_none(self): user = users.LtiBackend().authenticate( + self.request, username=self.edx_user.username, lti_user_id='Invalid Username', lti_consumer=self.lti_consumer @@ -220,12 +225,14 @@ class LtiBackendTest(TestCase): non_edx_user = UserFactory.create() non_edx_user.save() user = users.LtiBackend().authenticate( + self.request, username=non_edx_user.username, ) self.assertIsNone(user) def test_missing_lti_id_returns_null(self): user = users.LtiBackend().authenticate( + self.request, username=self.edx_user.username, lti_consumer=self.lti_consumer ) @@ -233,6 +240,7 @@ class LtiBackendTest(TestCase): def test_missing_lti_consumer_returns_null(self): user = users.LtiBackend().authenticate( + self.request, username=self.edx_user.username, lti_user_id=self.lti_user_id, ) diff --git a/lms/djangoapps/lti_provider/users.py b/lms/djangoapps/lti_provider/users.py index fd19edf498..04cfed7ac8 100644 --- a/lms/djangoapps/lti_provider/users.py +++ b/lms/djangoapps/lti_provider/users.py @@ -119,7 +119,7 @@ class LtiBackend(object): identity (i.e. the user was created by the create_lti_user method above). """ - def authenticate(self, username=None, lti_user_id=None, lti_consumer=None): + def authenticate(self, _request, username=None, lti_user_id=None, lti_consumer=None): """ Try to authenticate a user. This method will return a Django user object if a user with the corresponding username exists in the database, and