Skip to content

Commit

Permalink
test: advance paid update on sales/purchase order unreconciliation
Browse files Browse the repository at this point in the history
(cherry picked from commit 1f01ff3)
  • Loading branch information
ruthra-kumar authored and mergify[bot] committed Feb 26, 2024
1 parent 4d1f56c commit 94bb624
Showing 1 changed file with 49 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
from erpnext.accounts.doctype.payment_entry.test_payment_entry import create_payment_entry
from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order


class TestUnreconcilePayment(AccountsTestMixin, FrappeTestCase):
Expand Down Expand Up @@ -49,6 +50,16 @@ def create_payment_entry(self):
)
return pe

def create_sales_order(self):
so = make_sales_order(
company=self.company,
customer=self.customer,
item=self.item,
rate=100,
transaction_date=today(),
)
return so

def test_01_unreconcile_invoice(self):
si1 = self.create_sales_invoice()
si2 = self.create_sales_invoice()
Expand Down Expand Up @@ -314,3 +325,41 @@ def test_04_unreconciliation_on_multi_currency_invoice(self):
),
1,
)

def test_05_unreconcile_order(self):
so = self.create_sales_order()

pe = self.create_payment_entry()
# Allocation payment against Sales Order
pe.paid_amount = 100
pe.append(
"references",
{"reference_doctype": so.doctype, "reference_name": so.name, "allocated_amount": 100},
)
pe.save().submit()

# Assert 'Advance Paid'
so.reload()
self.assertEqual(so.advance_paid, 100)

unreconcile = frappe.get_doc(
{
"doctype": "Unreconcile Payment",
"company": self.company,
"voucher_type": pe.doctype,
"voucher_no": pe.name,
}
)
unreconcile.add_references()
self.assertEqual(len(unreconcile.allocations), 1)
allocations = [x.reference_name for x in unreconcile.allocations]
self.assertEquals([so.name], allocations)
# unreconcile so
unreconcile.save().submit()

# Assert 'Advance Paid'
so.reload()
pe.reload()
self.assertEqual(so.advance_paid, 0)
self.assertEqual(len(pe.references), 0)
self.assertEqual(pe.unallocated_amount, 100)

0 comments on commit 94bb624

Please sign in to comment.