test: Healthcare Masters
diff --git a/erpnext/healthcare/doctype/healthcare_service_unit_type/test_healthcare_service_unit_type.py b/erpnext/healthcare/doctype/healthcare_service_unit_type/test_healthcare_service_unit_type.py
index 3c5b64f..2f019df 100644
--- a/erpnext/healthcare/doctype/healthcare_service_unit_type/test_healthcare_service_unit_type.py
+++ b/erpnext/healthcare/doctype/healthcare_service_unit_type/test_healthcare_service_unit_type.py
@@ -3,6 +3,35 @@
 # See license.txt
 from __future__ import unicode_literals
 import unittest
+import frappe
 
 class TestHealthcareServiceUnitType(unittest.TestCase):
-	pass
+	def setUp(self):
+		frappe.db.sql("""delete from `tabHealthcare Service Unit Type`""")
+		frappe.db.sql("""delete from `tabItem`""")
+
+	def test_item_creation(self):
+		unit_type = get_unit_type()
+		self.assertTrue(frappe.db.exists('Item', unit_type.item))
+
+		# check item disabled
+		unit_type.disabled = 1
+		unit_type.save()
+		self.assertEqual(frappe.db.get_value('Item', unit_type.item, 'disabled'), 1)
+
+
+def get_unit_type():
+	if frappe.db.exists('Healthcare Service Unit Type', 'Inpatient Rooms'):
+		return frappe.get_doc('Healthcare Service Unit Type', 'Inpatient Rooms')
+
+	unit_type = frappe.new_doc('Healthcare Service Unit Type')
+	unit_type.service_unit_type = 'Inpatient Rooms'
+	unit_type.inpatient_occupancy = 1
+	unit_type.is_billable = 1
+	unit_type.item_code = 'Inpatient Rooms'
+	unit_type.item_group = 'Services'
+	unit_type.uom = 'Hour'
+	unit_type.no_of_hours = 1
+	unit_type.rate = 4000
+	unit_type.save()
+	return unit_type
\ No newline at end of file
diff --git a/erpnext/healthcare/doctype/inpatient_record/test_inpatient_record.py b/erpnext/healthcare/doctype/inpatient_record/test_inpatient_record.py
index 1683492..6154a74 100644
--- a/erpnext/healthcare/doctype/inpatient_record/test_inpatient_record.py
+++ b/erpnext/healthcare/doctype/inpatient_record/test_inpatient_record.py
@@ -81,6 +81,7 @@
 		patient = frappe.new_doc("Patient")
 		patient.first_name = "_Test Patient"
 		patient.sex = "Male"
+		patient.mobile = 9876345675
 		patient.save(ignore_permissions=True)
 		return patient.name
 	return patient
diff --git a/erpnext/healthcare/doctype/patient/test_patient.py b/erpnext/healthcare/doctype/patient/test_patient.py
index aebaa6b..23695e7 100644
--- a/erpnext/healthcare/doctype/patient/test_patient.py
+++ b/erpnext/healthcare/doctype/patient/test_patient.py
@@ -4,8 +4,31 @@
 from __future__ import unicode_literals
 
 import unittest
-
-# test_records = frappe.get_test_records('Patient')
+import frappe
+from erpnext.healthcare.doctype.inpatient_record.test_inpatient_record import get_patient
 
 class TestPatient(unittest.TestCase):
-	pass
+	def test_customer_created(self):
+		frappe.db.sql("""delete from `tabPatient`""")
+		frappe.db.set_value('Healthcare Settings', None, 'link_customer_to_patient', 1)
+		patient = get_patient()
+		self.assertTrue(frappe.db.get_value('Patient', patient, 'customer'))
+
+	def test_patient_registration(self):
+		frappe.db.sql("""delete from `tabPatient`""")
+		settings = frappe.get_single('Healthcare Settings')
+		settings.collect_registration_fee = 1
+		settings.registration_fee = 500
+		settings.save()
+
+		patient = get_patient()
+		patient = frappe.get_doc('Patient', patient)
+		self.assertEqual(patient.status, 'Disabled')
+
+		# check sales invoice and patient status
+		result = patient.invoice_patient_registration()
+		self.assertTrue(frappe.db.exists('Sales Invoice', result.get('invoice')))
+		self.assertTrue(patient.status, 'Active')
+
+		settings.collect_registration_fee = 0
+		settings.save()