Test cases
This commit is contained in:
parent
813485023b
commit
ed94317df9
@ -0,0 +1,117 @@
|
|||||||
|
# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
|
||||||
|
# License: GNU General Public License v3. See license.txt
|
||||||
|
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
import unittest
|
||||||
|
import frappe
|
||||||
|
import erpnext
|
||||||
|
from erpnext.accounts.report.sales_payment_summary.sales_payment_summary import get_mode_of_payments, get_mode_of_payment_details
|
||||||
|
from frappe.utils import nowdate
|
||||||
|
from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
|
||||||
|
|
||||||
|
test_dependencies = ["Sales Invoice"]
|
||||||
|
|
||||||
|
class TestSalesPaymentSummary(unittest.TestCase):
|
||||||
|
def setUp(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def tearDown(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def test_get_mode_of_payments(self):
|
||||||
|
si = frappe.get_all("Sales Invoice", fields=["name", "docstatus"])
|
||||||
|
filters = get_filters()
|
||||||
|
|
||||||
|
for invoice in si[:2]:
|
||||||
|
doc = frappe.get_doc("Sales Invoice", invoice.name)
|
||||||
|
new_doc = frappe.copy_doc(doc)
|
||||||
|
new_doc.insert()
|
||||||
|
new_doc.submit()
|
||||||
|
try:
|
||||||
|
new_doc.submit()
|
||||||
|
except Exception as e:
|
||||||
|
pass
|
||||||
|
|
||||||
|
if int(new_doc.name[-3:])%2 == 0:
|
||||||
|
bank_account = "_Test Cash - _TC"
|
||||||
|
mode_of_payment = "Cash"
|
||||||
|
else:
|
||||||
|
bank_account = "_Test Bank - _TC"
|
||||||
|
mode_of_payment = "Credit Card"
|
||||||
|
|
||||||
|
pe = get_payment_entry("Sales Invoice", new_doc.name, bank_account=bank_account)
|
||||||
|
pe.reference_no = "_Test"
|
||||||
|
pe.reference_date = nowdate()
|
||||||
|
pe.mode_of_payment = mode_of_payment
|
||||||
|
pe.insert()
|
||||||
|
pe.submit()
|
||||||
|
|
||||||
|
mop = get_mode_of_payments(filters)
|
||||||
|
self.assertTrue('Credit Card' in mop.values()[0])
|
||||||
|
self.assertTrue('Cash' in mop.values()[0])
|
||||||
|
|
||||||
|
# Cancel all Cash payment entry and check if this mode of payment is still fetched.
|
||||||
|
payment_entries = frappe.get_all("Payment Entry", filters={"mode_of_payment": "Cash", "docstatus": 1}, fields=["name", "docstatus"])
|
||||||
|
for payment_entry in payment_entries:
|
||||||
|
pe = frappe.get_doc("Payment Entry", payment_entry.name)
|
||||||
|
pe.cancel()
|
||||||
|
|
||||||
|
mop = get_mode_of_payments(filters)
|
||||||
|
self.assertTrue('Credit Card' in mop.values()[0])
|
||||||
|
self.assertTrue('Cash' not in mop.values()[0])
|
||||||
|
|
||||||
|
def test_get_mode_of_payments_details(self):
|
||||||
|
si = frappe.get_all("Sales Invoice", fields=["name", "docstatus"])
|
||||||
|
filters = get_filters()
|
||||||
|
|
||||||
|
for invoice in si[:2]:
|
||||||
|
doc = frappe.get_doc("Sales Invoice", invoice.name)
|
||||||
|
new_doc = frappe.copy_doc(doc)
|
||||||
|
new_doc.insert()
|
||||||
|
new_doc.submit()
|
||||||
|
try:
|
||||||
|
new_doc.submit()
|
||||||
|
except Exception as e:
|
||||||
|
pass
|
||||||
|
|
||||||
|
if int(new_doc.name[-3:])%2 == 0:
|
||||||
|
bank_account = "_Test Cash - _TC"
|
||||||
|
mode_of_payment = "Cash"
|
||||||
|
else:
|
||||||
|
bank_account = "_Test Bank - _TC"
|
||||||
|
mode_of_payment = "Credit Card"
|
||||||
|
|
||||||
|
pe = get_payment_entry("Sales Invoice", new_doc.name, bank_account=bank_account)
|
||||||
|
pe.reference_no = "_Test"
|
||||||
|
pe.reference_date = nowdate()
|
||||||
|
pe.mode_of_payment = mode_of_payment
|
||||||
|
pe.insert()
|
||||||
|
pe.submit()
|
||||||
|
|
||||||
|
mopd = get_mode_of_payment_details(filters)
|
||||||
|
|
||||||
|
mopd_values = mopd.values()[0]
|
||||||
|
for mopd_value in mopd_values:
|
||||||
|
if mopd_value[0] == "Credit Card":
|
||||||
|
cc_init_amount = mopd_value[1]
|
||||||
|
|
||||||
|
# Cancel one Credit Card Payment Entry and check that it is not fetched in mode of payment details.
|
||||||
|
payment_entries = frappe.get_all("Payment Entry", filters={"mode_of_payment": "Credit Card", "docstatus": 1}, fields=["name", "docstatus"])
|
||||||
|
for payment_entry in payment_entries[:1]:
|
||||||
|
pe = frappe.get_doc("Payment Entry", payment_entry.name)
|
||||||
|
pe.cancel()
|
||||||
|
|
||||||
|
mopd = get_mode_of_payment_details(filters)
|
||||||
|
mopd_values = mopd.values()[0]
|
||||||
|
for mopd_value in mopd_values:
|
||||||
|
if mopd_value[0] == "Credit Card":
|
||||||
|
cc_final_amount = mopd_value[1]
|
||||||
|
|
||||||
|
self.assertTrue(cc_init_amount > cc_final_amount)
|
||||||
|
|
||||||
|
def get_filters():
|
||||||
|
return {
|
||||||
|
"from_date": "1900-01-01",
|
||||||
|
"to_date": nowdate(),
|
||||||
|
"company": "_Test Company"
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user