fix: add additional kwargs to USER_RETIRE_LMS (#38078)
This commit is contained in:
@@ -100,6 +100,22 @@ class ProgramEnrollmentRetireSignalTests(ModuleStoreTestCase):
|
||||
|
||||
self.assert_enrollment_and_history_retired(enrollment)
|
||||
|
||||
def test_retire_signal_handler_tolerates_extra_kwargs(self):
|
||||
"""
|
||||
Ensure program_enrollments retirement receiver does not break with additional kwargs.
|
||||
"""
|
||||
enrollment = self.create_enrollment_and_history()
|
||||
|
||||
# Simulate the signal being sent with extra kwargs.
|
||||
_listen_for_lms_retire(
|
||||
sender=self.__class__,
|
||||
user=enrollment.user,
|
||||
retired_username='retired-test-username',
|
||||
retired_email='retired-test@example.com',
|
||||
)
|
||||
|
||||
self.assert_enrollment_and_history_retired(enrollment)
|
||||
|
||||
|
||||
@ddt.ddt
|
||||
class SocialAuthEnrollmentCompletionSignalTest(CacheIsolationTestCase):
|
||||
|
||||
@@ -10,7 +10,7 @@ from django.dispatch import Signal
|
||||
USER_RETIRE_MAILINGS = Signal()
|
||||
|
||||
# Signal to retire LMS critical information
|
||||
# providing_args=["user"]
|
||||
# providing_args=["user", "retired_username", "retired_email"]
|
||||
USER_RETIRE_LMS_CRITICAL = Signal()
|
||||
|
||||
# Signal to retire LMS misc information
|
||||
|
||||
@@ -1170,7 +1170,12 @@ class AccountRetirementView(ViewSet):
|
||||
UnregisteredLearnerCohortAssignments.delete_by_user_value(original_email, field="email")
|
||||
|
||||
# This signal allows code in higher points of LMS to retire the user as necessary
|
||||
USER_RETIRE_LMS_CRITICAL.send(sender=self.__class__, user=user)
|
||||
USER_RETIRE_LMS_CRITICAL.send(
|
||||
sender=self.__class__,
|
||||
user=user,
|
||||
retired_username=retired_username,
|
||||
retired_email=retired_email,
|
||||
)
|
||||
|
||||
user.first_name = ""
|
||||
user.last_name = ""
|
||||
|
||||
Reference in New Issue
Block a user