diff --git a/healthcare/healthcare/doctype/medication_request/test_medication_request.py b/healthcare/healthcare/doctype/medication_request/test_medication_request.py index 4cf0e99ea0..6c1c714d47 100644 --- a/healthcare/healthcare/doctype/medication_request/test_medication_request.py +++ b/healthcare/healthcare/doctype/medication_request/test_medication_request.py @@ -21,7 +21,7 @@ def setup(self): def test_medication_request(self): patient, practitioner = create_healthcare_docs() medication = create_medcation() - encounter = create_encounter(patient, practitioner, "drug_prescription", medication) + encounter = create_encounter(patient, practitioner, "drug_prescription", medication, submit=True) self.assertTrue(frappe.db.exists("Medication Request", {"order_group": encounter.name})) medication_request = frappe.db.get_value( "Medication Request", {"order_group": encounter.name}, "name" diff --git a/healthcare/healthcare/doctype/service_request/test_service_request.py b/healthcare/healthcare/doctype/service_request/test_service_request.py index 8e4c2f42ce..e40c206511 100644 --- a/healthcare/healthcare/doctype/service_request/test_service_request.py +++ b/healthcare/healthcare/doctype/service_request/test_service_request.py @@ -28,7 +28,7 @@ def test_creation_on_encounter_submission(self): patient, practitioner = create_healthcare_docs() insulin_resistance_template = create_lab_test_template() encounter = create_encounter( - patient, practitioner, "lab_test_prescription", insulin_resistance_template + patient, practitioner, "lab_test_prescription", insulin_resistance_template, submit=True ) self.assertTrue(frappe.db.exists("Service Request", {"order_group": encounter.name})) service_request = frappe.db.get_value("Service Request", {"order_group": encounter.name}, "name") @@ -50,8 +50,28 @@ def test_creation_on_encounter_submission(self): ) self.assertTrue(frappe.db.get_value("Lab Test", lab_test.name, "invoiced")) + def test_creation_on_encounter_with_create_order_on_save_checked(self): + patient, practitioner = create_healthcare_docs() + insulin_resistance_template = create_lab_test_template() + encounter = create_encounter( + patient, practitioner, "lab_test_prescription", insulin_resistance_template + ) + encounter.submit_orders_on_save = True + encounter.save() + self.assertTrue(frappe.db.exists("Service Request", {"order_group": encounter.name})) + encounter.submit() + + # to check if submit creates order + self.assertEqual( + frappe.db.count( + "Service Request", + filters={"order_group": encounter.name}, + ), + 1, + ) -def create_encounter(patient, practitioner, type, template): + +def create_encounter(patient, practitioner, type, template, submit=False): patient_encounter = frappe.new_doc("Patient Encounter") patient_encounter.patient = patient patient_encounter.practitioner = practitioner @@ -63,8 +83,10 @@ def create_encounter(patient, practitioner, type, template): ) elif type == "drug_prescription": patient_encounter.append(type, {"medication": template.name}) - - patient_encounter.submit() + if submit: + patient_encounter.submit() + else: + patient_encounter.save() return patient_encounter