diff --git a/enterprise_access/apps/subsidy_access_policy/models.py b/enterprise_access/apps/subsidy_access_policy/models.py index bcb3bf1a..ddad7e99 100644 --- a/enterprise_access/apps/subsidy_access_policy/models.py +++ b/enterprise_access/apps/subsidy_access_policy/models.py @@ -1744,11 +1744,11 @@ def create_assignment(self): before redemption can occur. """ assignment_configuration = self.subsidy_access_policy.assignment_configuration - content_metadata = get_and_cache_content_metadata( + # Ensure that the requested content key is available for the related customer. + _ = get_and_cache_content_metadata( assignment_configuration.enterprise_customer_uuid, self.course_run_key, ) - content_key = content_metadata.get('content_key') user_record = User.objects.filter(lms_user_id=self.lms_user_id).first() if not user_record: raise Exception(f'No email could be found for lms_user_id {self.lms_user_id}') @@ -1756,7 +1756,7 @@ def create_assignment(self): return assignments_api.allocate_assignments( assignment_configuration, [user_record.email], - content_key, + self.course_run_key, self.content_price_cents, ) diff --git a/enterprise_access/apps/subsidy_access_policy/tests/test_forced_redemption.py b/enterprise_access/apps/subsidy_access_policy/tests/test_forced_redemption.py index dc2b4f97..16f10f3c 100644 --- a/enterprise_access/apps/subsidy_access_policy/tests/test_forced_redemption.py +++ b/enterprise_access/apps/subsidy_access_policy/tests/test_forced_redemption.py @@ -254,5 +254,6 @@ def test_force_redemption_with_assignment_happy_path(self, mock_pending_learner_ ) assignment = LearnerContentAssignment.objects.filter(lms_user_id=user.lms_user_id).first() + self.assertEqual(assignment.content_key, self.course_run_key) mock_send_email.delay.assert_called_once_with(assignment.uuid) mock_pending_learner_task.delay.assert_called_once_with(assignment.uuid)