From 641d3e0073c7974309c48cc199cd35a023f5f131 Mon Sep 17 00:00:00 2001 From: Charles-Henri Decultot Date: Thu, 27 Dec 2018 13:43:56 +0000 Subject: [PATCH] Add own records --- .../test_sales_payment_summary.py | 114 ++++++++++++------ 1 file changed, 74 insertions(+), 40 deletions(-) diff --git a/erpnext/accounts/report/sales_payment_summary/test_sales_payment_summary.py b/erpnext/accounts/report/sales_payment_summary/test_sales_payment_summary.py index 70ba5a362a..aeb618f122 100644 --- a/erpnext/accounts/report/sales_payment_summary/test_sales_payment_summary.py +++ b/erpnext/accounts/report/sales_payment_summary/test_sales_payment_summary.py @@ -5,45 +5,34 @@ from __future__ import unicode_literals import unittest import frappe 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 test_dependencies = ["Sales Invoice"] class TestSalesPaymentSummary(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass + @classmethod + def setUpClass(self): + create_records() 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() - for invoice in si[:-2]: - doc = frappe.get_doc("Sales Invoice", invoice.name) - new_doc = frappe.copy_doc(doc) - new_doc.ignore_pricing_rule = 1 - 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) + for dummy in range(2): + si = create_sales_invoice_record() + si.insert() + si.submit() - if int(new_doc.name[-3:])%2 == 0: + if int(si.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 = get_payment_entry("Sales Invoice", si.name, bank_account=bank_account) pe.reference_no = "_Test" - pe.reference_date = nowdate() + pe.reference_date = today() pe.mode_of_payment = mode_of_payment pe.insert() pe.submit() @@ -63,32 +52,23 @@ class TestSalesPaymentSummary(unittest.TestCase): self.assertTrue('Cash' not in mop.values()[0]) 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() - for invoice in si[:-2]: - doc = frappe.get_doc("Sales Invoice", invoice.name) - new_doc = frappe.copy_doc(doc) - new_doc.ignore_pricing_rule = 1 - 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) + for dummy in range(2): + si = create_sales_invoice_record() + si.insert() + si.submit() - if int(new_doc.name[-3:])%2 == 0: + if int(si.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 = get_payment_entry("Sales Invoice", si.name, bank_account=bank_account) pe.reference_no = "_Test" - pe.reference_date = nowdate() + pe.reference_date = today() pe.mode_of_payment = mode_of_payment pe.insert() pe.submit() @@ -117,6 +97,60 @@ class TestSalesPaymentSummary(unittest.TestCase): def get_filters(): return { "from_date": "1900-01-01", - "to_date": nowdate(), + "to_date": today(), "company": "_Test Company" - } \ No newline at end of file + } + +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() \ No newline at end of file