Add own records
This commit is contained in:
parent
0f9c47c242
commit
641d3e0073
@ -5,45 +5,34 @@ from __future__ import unicode_literals
|
|||||||
import unittest
|
import unittest
|
||||||
import frappe
|
import frappe
|
||||||
from erpnext.accounts.report.sales_payment_summary.sales_payment_summary import get_mode_of_payments, get_mode_of_payment_details
|
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 frappe.utils import today
|
||||||
from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
|
from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
|
||||||
|
|
||||||
test_dependencies = ["Sales Invoice"]
|
test_dependencies = ["Sales Invoice"]
|
||||||
|
|
||||||
class TestSalesPaymentSummary(unittest.TestCase):
|
class TestSalesPaymentSummary(unittest.TestCase):
|
||||||
def setUp(self):
|
@classmethod
|
||||||
pass
|
def setUpClass(self):
|
||||||
|
create_records()
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_mode_of_payments(self):
|
def test_get_mode_of_payments(self):
|
||||||
si = frappe.get_all("Sales Invoice", filters={"company": "_Test Company", "customer": "_Test Customer"}, fields=["name", "docstatus"])
|
|
||||||
filters = get_filters()
|
filters = get_filters()
|
||||||
|
|
||||||
for invoice in si[:-2]:
|
for dummy in range(2):
|
||||||
doc = frappe.get_doc("Sales Invoice", invoice.name)
|
si = create_sales_invoice_record()
|
||||||
new_doc = frappe.copy_doc(doc)
|
si.insert()
|
||||||
new_doc.ignore_pricing_rule = 1
|
si.submit()
|
||||||
for item in new_doc.items:
|
|
||||||
item.pricing_rule = ""
|
|
||||||
new_doc.insert()
|
|
||||||
new_doc.submit()
|
|
||||||
try:
|
|
||||||
new_doc.submit()
|
|
||||||
except Exception as e:
|
|
||||||
print(e)
|
|
||||||
|
|
||||||
if int(new_doc.name[-3:])%2 == 0:
|
if int(si.name[-3:])%2 == 0:
|
||||||
bank_account = "_Test Cash - _TC"
|
bank_account = "_Test Cash - _TC"
|
||||||
mode_of_payment = "Cash"
|
mode_of_payment = "Cash"
|
||||||
else:
|
else:
|
||||||
bank_account = "_Test Bank - _TC"
|
bank_account = "_Test Bank - _TC"
|
||||||
mode_of_payment = "Credit Card"
|
mode_of_payment = "Credit Card"
|
||||||
|
|
||||||
pe = get_payment_entry("Sales Invoice", new_doc.name, bank_account=bank_account)
|
pe = get_payment_entry("Sales Invoice", si.name, bank_account=bank_account)
|
||||||
pe.reference_no = "_Test"
|
pe.reference_no = "_Test"
|
||||||
pe.reference_date = nowdate()
|
pe.reference_date = today()
|
||||||
pe.mode_of_payment = mode_of_payment
|
pe.mode_of_payment = mode_of_payment
|
||||||
pe.insert()
|
pe.insert()
|
||||||
pe.submit()
|
pe.submit()
|
||||||
@ -63,32 +52,23 @@ class TestSalesPaymentSummary(unittest.TestCase):
|
|||||||
self.assertTrue('Cash' not in mop.values()[0])
|
self.assertTrue('Cash' not in mop.values()[0])
|
||||||
|
|
||||||
def test_get_mode_of_payments_details(self):
|
def test_get_mode_of_payments_details(self):
|
||||||
si = frappe.get_all("Sales Invoice", filters={"company": "_Test Company", "customer": "_Test Customer"}, fields=["name", "docstatus"])
|
|
||||||
filters = get_filters()
|
filters = get_filters()
|
||||||
|
|
||||||
for invoice in si[:-2]:
|
for dummy in range(2):
|
||||||
doc = frappe.get_doc("Sales Invoice", invoice.name)
|
si = create_sales_invoice_record()
|
||||||
new_doc = frappe.copy_doc(doc)
|
si.insert()
|
||||||
new_doc.ignore_pricing_rule = 1
|
si.submit()
|
||||||
for item in new_doc.items:
|
|
||||||
item.pricing_rule = ""
|
|
||||||
new_doc.insert()
|
|
||||||
new_doc.submit()
|
|
||||||
try:
|
|
||||||
new_doc.submit()
|
|
||||||
except Exception as e:
|
|
||||||
print(e)
|
|
||||||
|
|
||||||
if int(new_doc.name[-3:])%2 == 0:
|
if int(si.name[-3:])%2 == 0:
|
||||||
bank_account = "_Test Cash - _TC"
|
bank_account = "_Test Cash - _TC"
|
||||||
mode_of_payment = "Cash"
|
mode_of_payment = "Cash"
|
||||||
else:
|
else:
|
||||||
bank_account = "_Test Bank - _TC"
|
bank_account = "_Test Bank - _TC"
|
||||||
mode_of_payment = "Credit Card"
|
mode_of_payment = "Credit Card"
|
||||||
|
|
||||||
pe = get_payment_entry("Sales Invoice", new_doc.name, bank_account=bank_account)
|
pe = get_payment_entry("Sales Invoice", si.name, bank_account=bank_account)
|
||||||
pe.reference_no = "_Test"
|
pe.reference_no = "_Test"
|
||||||
pe.reference_date = nowdate()
|
pe.reference_date = today()
|
||||||
pe.mode_of_payment = mode_of_payment
|
pe.mode_of_payment = mode_of_payment
|
||||||
pe.insert()
|
pe.insert()
|
||||||
pe.submit()
|
pe.submit()
|
||||||
@ -117,6 +97,60 @@ class TestSalesPaymentSummary(unittest.TestCase):
|
|||||||
def get_filters():
|
def get_filters():
|
||||||
return {
|
return {
|
||||||
"from_date": "1900-01-01",
|
"from_date": "1900-01-01",
|
||||||
"to_date": nowdate(),
|
"to_date": today(),
|
||||||
"company": "_Test Company"
|
"company": "_Test Company"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def create_sales_invoice_record(qty=1):
|
||||||
|
# return sales invoice doc object
|
||||||
|
return frappe.get_doc({
|
||||||
|
"doctype": "Sales Invoice",
|
||||||
|
"customer": frappe.get_doc('Customer', {"customer_name": "Prestiga-Biz"}).name,
|
||||||
|
"company": '_Test Company',
|
||||||
|
"due_date": today(),
|
||||||
|
"posting_date": today(),
|
||||||
|
"currency": "INR",
|
||||||
|
"taxes_and_charges": "",
|
||||||
|
"debit_to": "Debtors - _TC",
|
||||||
|
"taxes": [],
|
||||||
|
"items": [{
|
||||||
|
'doctype': 'Sales Invoice Item',
|
||||||
|
'item_code': frappe.get_doc('Item', {'item_name': 'Consulting'}).name,
|
||||||
|
'qty': qty,
|
||||||
|
"rate": 10000,
|
||||||
|
'income_account': 'Sales - _TC',
|
||||||
|
'cost_center': 'Main - _TC',
|
||||||
|
'expense_account': 'Cost of Goods Sold - _TC'
|
||||||
|
}]
|
||||||
|
})
|
||||||
|
|
||||||
|
def create_records():
|
||||||
|
if frappe.db.exists("Customer", "Prestiga-Biz"):
|
||||||
|
return
|
||||||
|
|
||||||
|
#customer
|
||||||
|
frappe.get_doc({
|
||||||
|
"customer_group": "_Test Customer Group",
|
||||||
|
"customer_name": "Prestiga-Biz",
|
||||||
|
"customer_type": "Company",
|
||||||
|
"doctype": "Customer",
|
||||||
|
"territory": "_Test Territory"
|
||||||
|
}).insert()
|
||||||
|
|
||||||
|
# item
|
||||||
|
item = frappe.get_doc({
|
||||||
|
"doctype": "Item",
|
||||||
|
"item_code": "Consulting",
|
||||||
|
"item_name": "Consulting",
|
||||||
|
"item_group": "All Item Groups",
|
||||||
|
"company": "_Test Company",
|
||||||
|
"is_stock_item": 0
|
||||||
|
}).insert()
|
||||||
|
|
||||||
|
# item price
|
||||||
|
frappe.get_doc({
|
||||||
|
"doctype": "Item Price",
|
||||||
|
"price_list": "Standard Selling",
|
||||||
|
"item_code": item.item_code,
|
||||||
|
"price_list_rate": 10000
|
||||||
|
}).insert()
|
||||||
Loading…
x
Reference in New Issue
Block a user