From c585bdb316e8a2ec8f9cfd3064c31189edb4cb80 Mon Sep 17 00:00:00 2001 From: ruthra kumar Date: Tue, 29 Apr 2025 12:33:49 +0530 Subject: [PATCH] chore: setup test data in class initialization --- .../sales_invoice/test_sales_invoice.py | 75 +++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py index dcd465e51a4..4d09f8e2977 100644 --- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py +++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py @@ -87,12 +87,87 @@ class TestSalesInvoice(IntegrationTestCase): def setUpClass(cls): super().setUpClass() cls.enterClassContext(cls.change_settings("Selling Settings", validate_selling_price=0)) + cls.make_employees() + cls.make_sales_person() unlink_payment_on_cancel_of_invoice() @classmethod def tearDownClass(self): unlink_payment_on_cancel_of_invoice(0) + @classmethod + def make_employees(cls): + records = [ + { + "company": "_Test Company", + "date_of_birth": "1980-01-01", + "date_of_joining": "2010-01-01", + "department": "_Test Department - _TC", + "doctype": "Employee", + "first_name": "_Test Employee", + "gender": "Female", + "naming_series": "_T-Employee-", + "status": "Active", + "user_id": "test@example.com", + }, + { + "company": "_Test Company", + "date_of_birth": "1980-01-01", + "date_of_joining": "2010-01-01", + "department": "_Test Department 1 - _TC", + "doctype": "Employee", + "first_name": "_Test Employee 1", + "gender": "Male", + "naming_series": "_T-Employee-", + "status": "Active", + "user_id": "test1@example.com", + }, + { + "company": "_Test Company", + "date_of_birth": "1980-01-01", + "date_of_joining": "2010-01-01", + "department": "_Test Department 1 - _TC", + "doctype": "Employee", + "first_name": "_Test Employee 2", + "gender": "Male", + "naming_series": "_T-Employee-", + "status": "Active", + "user_id": "test2@example.com", + }, + ] + for x in records: + if not frappe.db.exists("Employee", {"first_name": x.get("first_name")}): + frappe.get_doc(x).insert() + + @classmethod + def make_sales_person(cls): + records = [ + { + "doctype": "Sales Person", + "employee": "_T-Employee-00001", + "is_group": 0, + "parent_sales_person": "Sales Team", + "sales_person_name": "_Test Sales Person", + }, + { + "doctype": "Sales Person", + "employee": "_T-Employee-00002", + "is_group": 0, + "parent_sales_person": "Sales Team", + "sales_person_name": "_Test Sales Person 1", + }, + { + "doctype": "Sales Person", + "employee": "_T-Employee-00003", + "is_group": 0, + "parent_sales_person": "Sales Team", + "sales_person_name": "_Test Sales Person 2", + }, + ] + for x in records: + if not frappe.db.exists("Sales Person", {"sales_person_name": x.get("sales_person_name")}): + frappe.get_doc(x).insert() + def test_sales_invoice_qty(self): si = create_sales_invoice(qty=0, do_not_save=True) with self.assertRaises(InvalidQtyError):