Skip to content

Commit

Permalink
Add more tests for referred_to
Browse files Browse the repository at this point in the history
  • Loading branch information
Ashesh3 committed Aug 3, 2023
1 parent 880cf3f commit 9ce885f
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 1 deletion.
5 changes: 4 additions & 1 deletion care/facility/api/serializers/patient_consultation.py
Original file line number Diff line number Diff line change
Expand Up @@ -405,8 +405,11 @@ class PatientConsultationDischargeSerializer(serializers.ModelSerializer):
referred_to = ExternalIdSerializerField(
queryset=Facility.objects.all(),
required=False,
allow_null=True,
)
referred_to_external = serializers.CharField(
required=False, allow_blank=True, allow_null=True
)
referred_to_external = serializers.CharField(required=False, allow_blank=True)

def get_discharge_prescription(self, consultation):
return Prescription.objects.filter(
Expand Down
43 changes: 43 additions & 0 deletions care/facility/tests/test_patient_consultation_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,49 @@ def test_referred_to_external_empty_string(self):
)
self.assertEqual(res.status_code, status.HTTP_200_OK)

def test_referred_to_empty_facility(self):
consultation = self.create_admission_consultation(
suggestion="A",
admission_date=make_aware(datetime.datetime(2020, 4, 1, 15, 30, 00)),
)
res = self.discharge(
consultation,
discharge_reason="REF",
discharge_date="2023-07-01T12:00:00Z",
discharge_notes="Discharged with empty referred_to_external",
referred_to=None,
)
self.assertEqual(res.status_code, status.HTTP_200_OK)

def test_referred_to_and_external_together(self):
consultation = self.create_admission_consultation(
suggestion="A",
admission_date=make_aware(datetime.datetime(2020, 4, 1, 15, 30, 00)),
)
res = self.discharge(
consultation,
discharge_reason="REF",
discharge_date="2023-07-01T12:00:00Z",
discharge_notes="Discharged with null referred_to_external",
referred_to_external="External Facility",
referred_to=self.facility.external_id,
)
self.assertEqual(res.status_code, status.HTTP_400_BAD_REQUEST)

def test_referred_to_valid_value(self):
consultation = self.create_admission_consultation(
suggestion="A",
admission_date=make_aware(datetime.datetime(2020, 4, 1, 15, 30, 00)),
)
referred_to_external = "Test Hospital"
res = self.discharge(
consultation,
discharge_reason="REF",
discharge_date="2023-07-01T12:00:00Z",
referred_to_external=referred_to_external,
)
self.assertEqual(res.status_code, status.HTTP_200_OK)

def test_referred_to_external_valid_value(self):
consultation = self.create_admission_consultation(
suggestion="A",
Expand Down

0 comments on commit 9ce885f

Please sign in to comment.