From 7d14833856083459039d70dff3ab3c4b861d3906 Mon Sep 17 00:00:00 2001 From: Navin-S-R Date: Tue, 3 Feb 2026 13:12:11 +0530 Subject: [PATCH] fix: handle duplicate acctount row for the same company --- .../doctype/asset_repair/test_asset_repair.py | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/erpnext/assets/doctype/asset_repair/test_asset_repair.py b/erpnext/assets/doctype/asset_repair/test_asset_repair.py index ebacf4d2215..012a3895768 100644 --- a/erpnext/assets/doctype/asset_repair/test_asset_repair.py +++ b/erpnext/assets/doctype/asset_repair/test_asset_repair.py @@ -210,26 +210,29 @@ class TestAssetRepair(IntegrationTestCase): self.assertRaises(frappe.ValidationError, asset_repair2.save) def test_gl_entries_with_perpetual_inventory(self): - set_depreciation_settings_in_company(company="_Test Company with perpetual inventory") + company = "_Test Company with perpetual inventory" + set_depreciation_settings_in_company(company) asset_category = frappe.get_doc("Asset Category", "Computers") - asset_category.append( - "accounts", - { - "company_name": "_Test Company with perpetual inventory", - "fixed_asset_account": "_Test Fixed Asset - TCP1", - "accumulated_depreciation_account": "_Test Accumulated Depreciations - TCP1", - "depreciation_expense_account": "_Test Depreciations - TCP1", - "capital_work_in_progress_account": "CWIP Account - TCP1", - }, - ) - asset_category.save() + + if not any(row.company_name == company for row in asset_category.accounts): + asset_category.append( + "accounts", + { + "company_name": company, + "fixed_asset_account": "_Test Fixed Asset - TCP1", + "accumulated_depreciation_account": "_Test Accumulated Depreciations - TCP1", + "depreciation_expense_account": "_Test Depreciations - TCP1", + "capital_work_in_progress_account": "CWIP Account - TCP1", + }, + ) + asset_category.save() asset_repair = create_asset_repair( capitalize_repair_cost=1, stock_consumption=1, warehouse="Stores - TCP1", - company="_Test Company with perpetual inventory", + company=company, pi_expense_account1="Administrative Expenses - TCP1", pi_expense_account2="Legal Expenses - TCP1", item="_Test Non Stock Item",