From 1fda0dfb9bf1ef75722f33096fa84c1386b7652c Mon Sep 17 00:00:00 2001 From: ruthra kumar Date: Tue, 16 Jun 2026 17:55:42 +0530 Subject: [PATCH] refactor(tests): replace AccountsTestMixin master data setup with direct attribute assignments All test classes inheriting AccountsTestMixin that called create_company(), create_item(), create_customer(), create_supplier(), create_usd_receivable_account(), and create_usd_payable_account() in setUp() now set instance attributes directly using master data pre-created by BootStrapTestData, eliminating redundant DB inserts on every test run. Co-Authored-By: Claude Sonnet 4.6 --- .../test_advance_payment_ledger_entry.py | 11 +++++++---- .../test_bank_reconciliation_tool.py | 6 ++++-- .../test_bank_statement_import_log.py | 5 +++-- .../test_bank_transaction_rule.py | 7 +++++-- .../test_exchange_rate_revaluation.py | 9 +++++---- .../doctype/ledger_health/test_ledger_health.py | 6 ++++-- .../test_process_statement_of_accounts.py | 3 +-- .../test_unreconcile_payment.py | 13 ++++++++----- .../accounts_payable/test_accounts_payable.py | 9 ++++----- .../test_accounts_receivable.py | 15 +++++++++++---- .../test_accounts_receivable_summary.py | 8 +++++--- .../test_customer_ledger_summary.py | 9 ++++++--- .../test_deferred_revenue_and_expense.py | 12 +++++++++--- .../test_general_and_payment_ledger_comparison.py | 8 +++++++- .../test_item_wise_purchase_register.py | 6 +++--- .../test_item_wise_sales_register.py | 8 +++++--- .../test_profit_and_loss_statement.py | 8 +++++--- .../report/sales_register/test_sales_register.py | 10 +++++++--- .../test_supplier_ledger_summary.py | 6 +++--- .../test_tax_withholding_details.py | 2 +- 20 files changed, 103 insertions(+), 58 deletions(-) diff --git a/erpnext/accounts/doctype/advance_payment_ledger_entry/test_advance_payment_ledger_entry.py b/erpnext/accounts/doctype/advance_payment_ledger_entry/test_advance_payment_ledger_entry.py index d910bef3d94..c355c160eb7 100644 --- a/erpnext/accounts/doctype/advance_payment_ledger_entry/test_advance_payment_ledger_entry.py +++ b/erpnext/accounts/doctype/advance_payment_ledger_entry/test_advance_payment_ledger_entry.py @@ -22,10 +22,13 @@ class TestAdvancePaymentLedgerEntry(ERPNextTestSuite, AccountsTestMixin): """ def setUp(self): - self.create_company() - self.create_usd_receivable_account() - self.create_usd_payable_account() - self.create_item() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.supplier = "_Test Supplier" + self.item = "_Test Item" + self.cash = "Cash - _TC" + self.debtors_usd = "_Test Receivable USD - _TC" + self.creditors_usd = "_Test Payable USD - _TC" self.clear_old_entries() def create_sales_order(self, qty=1, rate=100, currency="INR", do_not_submit=False): diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py b/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py index 3a55b3fc1d8..f47d9aec98c 100644 --- a/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py +++ b/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py @@ -17,8 +17,10 @@ from erpnext.tests.utils import ERPNextTestSuite class TestBankReconciliationTool(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.bank = "HDFC - _TC" + self.debit_to = "Debtors - _TC" self.clear_old_entries() bank_dt = qb.DocType("Bank") qb.from_(bank_dt).delete().where(bank_dt.name == "HDFC").run() diff --git a/erpnext/accounts/doctype/bank_statement_import_log/test_bank_statement_import_log.py b/erpnext/accounts/doctype/bank_statement_import_log/test_bank_statement_import_log.py index 09dcae707ee..a4240b3cbd9 100644 --- a/erpnext/accounts/doctype/bank_statement_import_log/test_bank_statement_import_log.py +++ b/erpnext/accounts/doctype/bank_statement_import_log/test_bank_statement_import_log.py @@ -26,8 +26,9 @@ from erpnext.tests.utils import ERPNextTestSuite class TestBankStatementImportLog(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.bank = "HDFC - _TC" self.clear_old_entries() bank_dt = qb.DocType("Bank") qb.from_(bank_dt).delete().where(bank_dt.name == "HDFC").run() diff --git a/erpnext/accounts/doctype/bank_transaction_rule/test_bank_transaction_rule.py b/erpnext/accounts/doctype/bank_transaction_rule/test_bank_transaction_rule.py index 35defa31da6..c8dc91baa72 100644 --- a/erpnext/accounts/doctype/bank_transaction_rule/test_bank_transaction_rule.py +++ b/erpnext/accounts/doctype/bank_transaction_rule/test_bank_transaction_rule.py @@ -11,8 +11,11 @@ from erpnext.tests.utils import ERPNextTestSuite class TestBankTransactionRule(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.bank = "HDFC - _TC" + self.debit_to = "Debtors - _TC" + self.cash = "Cash - _TC" self.clear_old_entries() bank_dt = qb.DocType("Bank") qb.from_(bank_dt).delete().where(bank_dt.name == "HDFC").run() diff --git a/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py b/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py index a6adba537e2..57af5a51329 100644 --- a/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py +++ b/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py @@ -15,10 +15,11 @@ from erpnext.tests.utils import ERPNextTestSuite class TestExchangeRateRevaluation(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_usd_receivable_account() - self.create_item() - self.create_customer() + self.company = "_Test Company" + self.item = "_Test Item" + self.customer = "_Test Customer" + self.cost_center = "Main - _TC" + self.debtors_usd = "_Test Receivable USD - _TC" self.clear_old_entries() self.set_system_and_company_settings() diff --git a/erpnext/accounts/doctype/ledger_health/test_ledger_health.py b/erpnext/accounts/doctype/ledger_health/test_ledger_health.py index d9d4249ca69..9536f2be29b 100644 --- a/erpnext/accounts/doctype/ledger_health/test_ledger_health.py +++ b/erpnext/accounts/doctype/ledger_health/test_ledger_health.py @@ -12,8 +12,10 @@ from erpnext.tests.utils import ERPNextTestSuite class TestLedgerHealth(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.debit_to = "Debtors - _TC" + self.income_account = "Sales - _TC" self.configure_monitoring_tool() self.clear_old_entries() diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py b/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py index 205b847de6b..3ce876e8d56 100644 --- a/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py +++ b/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py @@ -25,8 +25,7 @@ class TestProcessStatementOfAccounts(ERPNextTestSuite, AccountsTestMixin): update_modified=False, ) - self.create_company() - self.create_customer() + self.company = "_Test Company" self.create_customer(customer_name="Other Customer") self.clear_old_entries() self.si = create_sales_invoice() diff --git a/erpnext/accounts/doctype/unreconcile_payment/test_unreconcile_payment.py b/erpnext/accounts/doctype/unreconcile_payment/test_unreconcile_payment.py index 53d80e4099e..25b48ef0530 100644 --- a/erpnext/accounts/doctype/unreconcile_payment/test_unreconcile_payment.py +++ b/erpnext/accounts/doctype/unreconcile_payment/test_unreconcile_payment.py @@ -16,11 +16,14 @@ from erpnext.tests.utils import ERPNextTestSuite class TestUnreconcilePayment(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() - self.create_supplier() - self.create_usd_receivable_account() - self.create_item() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.supplier = "_Test Supplier" + self.item = "_Test Item" + self.debit_to = "Debtors - _TC" + self.cost_center = "Main - _TC" + self.cash = "Cash - _TC" + self.debtors_usd = "_Test Receivable USD - _TC" self.clear_old_entries() def create_sales_invoice(self, do_not_submit=False): diff --git a/erpnext/accounts/report/accounts_payable/test_accounts_payable.py b/erpnext/accounts/report/accounts_payable/test_accounts_payable.py index ee296447c0e..d041451ae94 100644 --- a/erpnext/accounts/report/accounts_payable/test_accounts_payable.py +++ b/erpnext/accounts/report/accounts_payable/test_accounts_payable.py @@ -9,11 +9,10 @@ from erpnext.tests.utils import ERPNextTestSuite class TestAccountsPayable(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() - self.create_item() - self.create_supplier(currency="USD", supplier_name="Test Supplier2") - self.create_usd_payable_account() + self.company = "_Test Company" + self.item = "_Test Item" + self.supplier = "_Test Supplier USD" + self.creditors_usd = "_Test Payable USD - _TC" def test_accounts_payable_for_foreign_currency_supplier(self): pi = self.create_purchase_invoice(do_not_submit=True) diff --git a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py index 020813b8f1c..939d576e252 100644 --- a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py +++ b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py @@ -12,10 +12,17 @@ from erpnext.tests.utils import ERPNextTestSuite class TestAccountsReceivable(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() - self.create_item() - self.create_usd_receivable_account() + self.company = "_Test Company" + self.company_abbr = "_TC" + self.customer = "_Test Customer" + self.item = "_Test Item" + self.cost_center = "Main - _TC" + self.warehouse = "Stores - _TC" + self.income_account = "Sales - _TC" + self.expense_account = "Cost of Goods Sold - _TC" + self.debit_to = "Debtors - _TC" + self.cash = "Cash - _TC" + self.debtors_usd = "_Test Receivable USD - _TC" self.clear_old_entries() def create_sales_invoice(self, no_payment_schedule=False, do_not_submit=False, **args): diff --git a/erpnext/accounts/report/accounts_receivable_summary/test_accounts_receivable_summary.py b/erpnext/accounts/report/accounts_receivable_summary/test_accounts_receivable_summary.py index 5b8065eef0c..42444f75885 100644 --- a/erpnext/accounts/report/accounts_receivable_summary/test_accounts_receivable_summary.py +++ b/erpnext/accounts/report/accounts_receivable_summary/test_accounts_receivable_summary.py @@ -11,9 +11,11 @@ from erpnext.tests.utils import ERPNextTestSuite class TestAccountsReceivable(ERPNextTestSuite, AccountsTestMixin): def setUp(self): self.maxDiff = None - self.create_company() - self.create_customer() - self.create_item() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.item = "_Test Item" + self.debit_to = "Debtors - _TC" + self.cost_center = "Main - _TC" self.clear_old_entries() def test_01_receivable_summary_output(self): diff --git a/erpnext/accounts/report/customer_ledger_summary/test_customer_ledger_summary.py b/erpnext/accounts/report/customer_ledger_summary/test_customer_ledger_summary.py index ac955b978dc..f9c86c3dca7 100644 --- a/erpnext/accounts/report/customer_ledger_summary/test_customer_ledger_summary.py +++ b/erpnext/accounts/report/customer_ledger_summary/test_customer_ledger_summary.py @@ -11,9 +11,12 @@ from erpnext.tests.utils import ERPNextTestSuite class TestCustomerLedgerSummary(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() - self.create_item() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.item = "_Test Item" + self.debit_to = "Debtors - _TC" + self.cost_center = "Main - _TC" + self.cash = "Cash - _TC" self.clear_old_entries() def create_sales_invoice(self, do_not_submit=False, **args): diff --git a/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py b/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py index 15e216e333a..497498b8ac3 100644 --- a/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py +++ b/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py @@ -61,9 +61,15 @@ class TestDeferredRevenueAndExpense(ERPNextTestSuite, AccountsTestMixin): ) def setUp(self): - self.create_company() - self.create_customer("_Test Customer") - self.create_supplier("_Test Furniture Supplier") + self.company = "_Test Company" + self.company_abbr = "_TC" + self.customer = "_Test Customer" + self.supplier = "_Test Supplier" + self.warehouse = "Stores - _TC" + self.debit_to = "Debtors - _TC" + self.cost_center = "Main - _TC" + self.income_account = "Sales - _TC" + self.expense_account = "Cost of Goods Sold - _TC" self.setup_deferred_accounts_and_items() self.clear_old_entries() diff --git a/erpnext/accounts/report/general_and_payment_ledger_comparison/test_general_and_payment_ledger_comparison.py b/erpnext/accounts/report/general_and_payment_ledger_comparison/test_general_and_payment_ledger_comparison.py index dd836a6891e..a03a32b8146 100644 --- a/erpnext/accounts/report/general_and_payment_ledger_comparison/test_general_and_payment_ledger_comparison.py +++ b/erpnext/accounts/report/general_and_payment_ledger_comparison/test_general_and_payment_ledger_comparison.py @@ -12,7 +12,13 @@ from erpnext.tests.utils import ERPNextTestSuite class TestGeneralAndPaymentLedger(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() + self.company = "_Test Company" + self.debit_to = "Debtors - _TC" + self.expense_account = "Cost of Goods Sold - _TC" + self.cost_center = "Main - _TC" + self.income_account = "Sales - _TC" + self.warehouse = "Stores - _TC" + self.creditors = "Creditors - _TC" self.cleanup() def cleanup(self): diff --git a/erpnext/accounts/report/item_wise_purchase_register/test_item_wise_purchase_register.py b/erpnext/accounts/report/item_wise_purchase_register/test_item_wise_purchase_register.py index 64b0dfc739d..09b2e884e53 100644 --- a/erpnext/accounts/report/item_wise_purchase_register/test_item_wise_purchase_register.py +++ b/erpnext/accounts/report/item_wise_purchase_register/test_item_wise_purchase_register.py @@ -9,9 +9,9 @@ from erpnext.tests.utils import ERPNextTestSuite class TestItemWisePurchaseRegister(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_supplier() - self.create_item() + self.company = "_Test Company" + self.supplier = "_Test Supplier" + self.item = "_Test Item" def create_purchase_invoice(self, do_not_submit=False): pi = make_purchase_invoice( diff --git a/erpnext/accounts/report/item_wise_sales_register/test_item_wise_sales_register.py b/erpnext/accounts/report/item_wise_sales_register/test_item_wise_sales_register.py index 708bf1ffe89..afff1bde154 100644 --- a/erpnext/accounts/report/item_wise_sales_register/test_item_wise_sales_register.py +++ b/erpnext/accounts/report/item_wise_sales_register/test_item_wise_sales_register.py @@ -9,9 +9,11 @@ from erpnext.tests.utils import ERPNextTestSuite class TestItemWiseSalesRegister(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() - self.create_item() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.item = "_Test Item" + self.debit_to = "Debtors - _TC" + self.cost_center = "Main - _TC" def create_sales_invoice(self, item=None, taxes=None, do_not_submit=False): si = create_sales_invoice( diff --git a/erpnext/accounts/report/profit_and_loss_statement/test_profit_and_loss_statement.py b/erpnext/accounts/report/profit_and_loss_statement/test_profit_and_loss_statement.py index 4a509f63843..725aec07011 100644 --- a/erpnext/accounts/report/profit_and_loss_statement/test_profit_and_loss_statement.py +++ b/erpnext/accounts/report/profit_and_loss_statement/test_profit_and_loss_statement.py @@ -14,9 +14,11 @@ from erpnext.tests.utils import ERPNextTestSuite class TestProfitAndLossStatement(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() - self.create_item() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.item = "_Test Item" + self.debit_to = "Debtors - _TC" + self.cost_center = "Main - _TC" def create_sales_invoice(self, qty=1, rate=150, no_payment_schedule=False, do_not_submit=False): frappe.set_user("Administrator") diff --git a/erpnext/accounts/report/sales_register/test_sales_register.py b/erpnext/accounts/report/sales_register/test_sales_register.py index 0875c7c143f..132b7a0ee3b 100644 --- a/erpnext/accounts/report/sales_register/test_sales_register.py +++ b/erpnext/accounts/report/sales_register/test_sales_register.py @@ -10,9 +10,13 @@ from erpnext.tests.utils import ERPNextTestSuite class TestItemWiseSalesRegister(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_customer() - self.create_item() + self.company = "_Test Company" + self.customer = "_Test Customer" + self.item = "_Test Item" + self.debit_to = "Debtors - _TC" + self.cost_center = "Main - _TC" + self.income_account = "Sales - _TC" + self.cash = "Cash - _TC" self.create_child_cost_center() def create_child_cost_center(self): diff --git a/erpnext/accounts/report/supplier_ledger_summary/test_supplier_ledger_summary.py b/erpnext/accounts/report/supplier_ledger_summary/test_supplier_ledger_summary.py index 4ee0ea04677..d4be56bfd69 100644 --- a/erpnext/accounts/report/supplier_ledger_summary/test_supplier_ledger_summary.py +++ b/erpnext/accounts/report/supplier_ledger_summary/test_supplier_ledger_summary.py @@ -9,9 +9,9 @@ from erpnext.tests.utils import ERPNextTestSuite class TestSupplierLedgerSummary(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() - self.create_supplier() - self.create_item() + self.company = "_Test Company" + self.supplier = "_Test Supplier" + self.item = "_Test Item" self.clear_old_entries() def create_purchase_invoice(self, do_not_submit=False): diff --git a/erpnext/accounts/report/tax_withholding_details/test_tax_withholding_details.py b/erpnext/accounts/report/tax_withholding_details/test_tax_withholding_details.py index de03aaef77e..d55773f5189 100644 --- a/erpnext/accounts/report/tax_withholding_details/test_tax_withholding_details.py +++ b/erpnext/accounts/report/tax_withholding_details/test_tax_withholding_details.py @@ -20,7 +20,7 @@ from erpnext.tests.utils import ERPNextTestSuite class TestTaxWithholdingDetails(ERPNextTestSuite, AccountsTestMixin): def setUp(self): - self.create_company() + self.company = "_Test Company" self.clear_old_entries() create_records()