refactor(test): more modularization
diff --git a/erpnext/accounts/doctype/unreconcile_payments/test_unreconcile_payments.py b/erpnext/accounts/doctype/unreconcile_payments/test_unreconcile_payments.py
index 924a950..3d7c6cb 100644
--- a/erpnext/accounts/doctype/unreconcile_payments/test_unreconcile_payments.py
+++ b/erpnext/accounts/doctype/unreconcile_payments/test_unreconcile_payments.py
@@ -20,8 +20,8 @@
 	def tearDown(self):
 		frappe.db.rollback()
 
-	def test_01_unreconcile_invoice(self):
-		si1 = create_sales_invoice(
+	def create_sales_invoice(self):
+		si = create_sales_invoice(
 			item=self.item,
 			company=self.company,
 			customer=self.customer,
@@ -32,19 +32,9 @@
 			rate=100,
 			price_list_rate=100,
 		)
+		return si
 
-		si2 = create_sales_invoice(
-			item=self.item,
-			company=self.company,
-			customer=self.customer,
-			debit_to=self.debit_to,
-			posting_date=today(),
-			parent_cost_center=self.cost_center,
-			cost_center=self.cost_center,
-			rate=100,
-			price_list_rate=100,
-		)
-
+	def create_payment_entry(self):
 		pe = create_payment_entry(
 			company=self.company,
 			payment_type="Receive",
@@ -55,7 +45,13 @@
 			paid_amount=200,
 			save=True,
 		)
+		return pe
 
+	def test_01_unreconcile_invoice(self):
+		si1 = self.create_sales_invoice()
+		si2 = self.create_sales_invoice()
+
+		pe = self.create_payment_entry()
 		pe.append(
 			"references",
 			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 100},
@@ -68,10 +64,10 @@
 		pe.save().submit()
 
 		# Assert outstanding
-		si1.reload()
-		si2.reload()
+		[doc.reload() for doc in [si1, si2, pe]]
 		self.assertEqual(si1.outstanding_amount, 0)
 		self.assertEqual(si2.outstanding_amount, 0)
+		self.assertEqual(pe.unallocated_amount, 0)
 
 		unreconcile = frappe.get_doc(
 			{
@@ -92,54 +88,22 @@
 		unreconcile.save().submit()
 
 		# Assert outstanding
-		si1.reload()
-		si2.reload()
+		[doc.reload() for doc in [si1, si2, pe]]
 		self.assertEqual(si1.outstanding_amount, 100)
 		self.assertEqual(si2.outstanding_amount, 0)
-
-		pe.reload()
 		self.assertEqual(len(pe.references), 1)
 		self.assertEqual(pe.unallocated_amount, 100)
 
 	def test_02_unreconcile_one_payment_from_multi_payments(self):
 		"""
-		Scenario: 2 payments, both split against 2 invoices
+		Scenario: 2 payments, both split against 2 different invoices
 		Unreconcile only one payment from one invoice
 		"""
-		si1 = create_sales_invoice(
-			item=self.item,
-			company=self.company,
-			customer=self.customer,
-			debit_to=self.debit_to,
-			posting_date=today(),
-			parent_cost_center=self.cost_center,
-			cost_center=self.cost_center,
-			rate=100,
-			price_list_rate=100,
-		)
-
-		si2 = create_sales_invoice(
-			item=self.item,
-			company=self.company,
-			customer=self.customer,
-			debit_to=self.debit_to,
-			posting_date=today(),
-			parent_cost_center=self.cost_center,
-			cost_center=self.cost_center,
-			rate=100,
-			price_list_rate=100,
-		)
-
-		pe1 = create_payment_entry(
-			company=self.company,
-			payment_type="Receive",
-			party_type="Customer",
-			party=self.customer,
-			paid_from=self.debit_to,
-			paid_to=self.cash,
-			paid_amount=100,
-			save=True,
-		)
+		si1 = self.create_sales_invoice()
+		si2 = self.create_sales_invoice()
+		pe1 = self.create_payment_entry()
+		pe1.paid_amount = 100
+		# Allocate payment against both invoices
 		pe1.append(
 			"references",
 			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 50},
@@ -148,19 +112,11 @@
 			"references",
 			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 50},
 		)
-		# Allocation payment against both invoices
 		pe1.save().submit()
 
-		pe2 = create_payment_entry(
-			company=self.company,
-			payment_type="Receive",
-			party_type="Customer",
-			party=self.customer,
-			paid_from=self.debit_to,
-			paid_to=self.cash,
-			paid_amount=100,
-			save=True,
-		)
+		pe2 = self.create_payment_entry()
+		pe2.paid_amount = 100
+		# Allocate payment against both invoices
 		pe2.append(
 			"references",
 			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 50},
@@ -169,14 +125,14 @@
 			"references",
 			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 50},
 		)
-		# Allocation payment against both invoices
 		pe2.save().submit()
 
-		# Assert outstanding
-		si1.reload()
-		si2.reload()
-		self.assertEqual(si1.outstanding_amount, 0)
-		self.assertEqual(si2.outstanding_amount, 0)
+		# Assert outstanding and unallocated
+		[doc.reload() for doc in [si1, si2, pe1, pe2]]
+		self.assertEqual(si1.outstanding_amount, 0.0)
+		self.assertEqual(si2.outstanding_amount, 0.0)
+		self.assertEqual(pe1.unallocated_amount, 0.0)
+		self.assertEqual(pe2.unallocated_amount, 0.0)
 
 		unreconcile = frappe.get_doc(
 			{
@@ -196,14 +152,10 @@
 				unreconcile.remove(x)
 		unreconcile.save().submit()
 
-		# Assert outstanding
-		si1.reload()
-		si2.reload()
+		# Assert outstanding and unallocated
+		[doc.reload() for doc in [si1, si2, pe1, pe2]]
 		self.assertEqual(si1.outstanding_amount, 50)
 		self.assertEqual(si2.outstanding_amount, 0)
-
-		pe1.reload()
-		pe2.reload()
 		self.assertEqual(len(pe1.references), 2)
 		self.assertEqual(len(pe2.references), 1)
 		self.assertEqual(pe1.unallocated_amount, 0)