From 67f3d854bc0374af890fd35fdd1ba00fa95047be Mon Sep 17 00:00:00 2001 From: tunde Date: Thu, 7 Sep 2017 12:22:48 +0100 Subject: [PATCH] test for quotation --- .../doctype/quotation/test_quotation.py | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/erpnext/selling/doctype/quotation/test_quotation.py b/erpnext/selling/doctype/quotation/test_quotation.py index d7d84c7bd6..457ba1a359 100644 --- a/erpnext/selling/doctype/quotation/test_quotation.py +++ b/erpnext/selling/doctype/quotation/test_quotation.py @@ -4,6 +4,7 @@ from __future__ import unicode_literals import frappe from frappe.utils import flt, add_days, nowdate, add_months +from erpnext.controllers.accounts_controller import get_payment_terms import unittest test_dependencies = ["Product Bundle"] @@ -33,6 +34,40 @@ class TestQuotation(unittest.TestCase): sales_order.transaction_date = nowdate() sales_order.insert() + def test_make_sales_order_with_terms(self): + from erpnext.selling.doctype.quotation.quotation import make_sales_order + + quotation = frappe.copy_doc(test_records[0]) + quotation.transaction_date = nowdate() + quotation.valid_till = add_months(quotation.transaction_date, 1) + quotation.insert() + quotation.update( + {"payment_schedule": get_payment_terms( + "_Test Payment Term Template", quotation.transaction_date, quotation.grand_total + )} + ) + + self.assertRaises(frappe.ValidationError, make_sales_order, quotation.name) + quotation.save() + quotation.submit() + self.assertEqual(quotation.payment_schedule[0].payment_amount, 8906.25) + self.assertEqual(quotation.payment_schedule[0].due_date, quotation.transaction_date) + self.assertEqual(quotation.payment_schedule[1].payment_amount, 8906.25) + self.assertEqual(quotation.payment_schedule[1].due_date, add_days(quotation.transaction_date, 30)) + + sales_order = make_sales_order(quotation.name) + + self.assertEquals(sales_order.doctype, "Sales Order") + self.assertEquals(len(sales_order.get("items")), 1) + self.assertEquals(sales_order.get("items")[0].doctype, "Sales Order Item") + self.assertEquals(sales_order.get("items")[0].prevdoc_docname, quotation.name) + self.assertEquals(sales_order.customer, "_Test Customer") + + sales_order.delivery_date = "2014-01-01" + sales_order.naming_series = "_T-Quotation-" + sales_order.transaction_date = nowdate() + sales_order.insert() + def test_valid_till(self): from erpnext.selling.doctype.quotation.quotation import make_sales_order