chore: test notifications are sent
This commit is contained in:
parent
844cc881ca
commit
0734894cb9
|
|
@ -1,3 +1,5 @@
|
||||||
|
from unittest.mock import patch
|
||||||
|
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
from rest_framework.test import APITestCase
|
from rest_framework.test import APITestCase
|
||||||
|
|
||||||
|
|
@ -56,7 +58,10 @@ class SelfEvaluationFeedbackAPI(APITestCase):
|
||||||
|
|
||||||
learning_mentor.participants.add(member_csu)
|
learning_mentor.participants.add(member_csu)
|
||||||
|
|
||||||
def test_start_self_evaluation_feedback(self):
|
@patch(
|
||||||
|
"vbv_lernwelt.notify.services.NotificationService.send_self_evaluation_feedback_request_feedback_notification"
|
||||||
|
)
|
||||||
|
def test_start_self_evaluation_feedback(self, mock_notification_service_send):
|
||||||
# GIVEN
|
# GIVEN
|
||||||
learning_unit = create_learning_unit(course=self.course, circle=self.circle)
|
learning_unit = create_learning_unit(course=self.course, circle=self.circle)
|
||||||
|
|
||||||
|
|
@ -98,6 +103,17 @@ class SelfEvaluationFeedbackAPI(APITestCase):
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# shall be idempotent
|
||||||
|
self.client.post(
|
||||||
|
reverse(
|
||||||
|
"start_self_evaluation_feedback",
|
||||||
|
args=[learning_unit.id],
|
||||||
|
),
|
||||||
|
{
|
||||||
|
"feedback_provider_user_id": self.mentor.id,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
# THEN
|
# THEN
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertEqual(response.data["success"], True)
|
self.assertEqual(response.data["success"], True)
|
||||||
|
|
@ -107,12 +123,14 @@ class SelfEvaluationFeedbackAPI(APITestCase):
|
||||||
1,
|
1,
|
||||||
)
|
)
|
||||||
|
|
||||||
# just get the first one
|
self_evaluation_feedback = SelfEvaluationFeedback.objects.first()
|
||||||
f = SelfEvaluationFeedback.objects.first()
|
self.assertEqual(self_evaluation_feedback.feedback_requester_user, self.member)
|
||||||
|
self.assertEqual(self_evaluation_feedback.feedback_provider_user, self.mentor)
|
||||||
|
self.assertEqual(self_evaluation_feedback.learning_unit, learning_unit)
|
||||||
|
|
||||||
self.assertEqual(f.feedback_requester_user, self.member)
|
mock_notification_service_send.assert_called_once_with(
|
||||||
self.assertEqual(f.feedback_provider_user, self.mentor)
|
self_evaluation_feedback=self_evaluation_feedback
|
||||||
self.assertEqual(f.learning_unit, learning_unit)
|
)
|
||||||
|
|
||||||
def test_start_self_evaluation_feedback_not_allowed_user(self):
|
def test_start_self_evaluation_feedback_not_allowed_user(self):
|
||||||
# GIVEN
|
# GIVEN
|
||||||
|
|
@ -370,7 +388,10 @@ class SelfEvaluationFeedbackAPI(APITestCase):
|
||||||
feedback.feedback_assessment, CourseCompletionStatus.FAIL.value
|
feedback.feedback_assessment, CourseCompletionStatus.FAIL.value
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_release_self_evaluation_feedback(self):
|
@patch(
|
||||||
|
"vbv_lernwelt.notify.services.NotificationService.send_self_evaluation_feedback_received_notification"
|
||||||
|
)
|
||||||
|
def test_release_self_evaluation_feedback(self, mock_notification_service_send):
|
||||||
# GIVEN
|
# GIVEN
|
||||||
learning_unit = create_learning_unit(course=self.course, circle=self.circle)
|
learning_unit = create_learning_unit(course=self.course, circle=self.circle)
|
||||||
self_evaluation_feedback = create_self_evaluation_feedback(
|
self_evaluation_feedback = create_self_evaluation_feedback(
|
||||||
|
|
@ -389,6 +410,13 @@ class SelfEvaluationFeedbackAPI(APITestCase):
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# shall be idempotent
|
||||||
|
response = self.client.put(
|
||||||
|
reverse(
|
||||||
|
"release_self_evaluation_feedback", args=[self_evaluation_feedback.id]
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
||||||
# THEN
|
# THEN
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertEqual(response.data["success"], True)
|
self.assertEqual(response.data["success"], True)
|
||||||
|
|
@ -398,3 +426,7 @@ class SelfEvaluationFeedbackAPI(APITestCase):
|
||||||
).feedback_submitted,
|
).feedback_submitted,
|
||||||
True,
|
True,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
mock_notification_service_send.assert_called_once_with(
|
||||||
|
self_evaluation_feedback=self_evaluation_feedback
|
||||||
|
)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue