From 38385432f6bb67aee86c29b2b34f3d09555a60c9 Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Thu, 25 Jun 2026 18:22:58 +0530 Subject: [PATCH] test: assert group-by totals on delta to avoid shared-category leak Co-Authored-By: Claude Opus 4.8 (1M context) --- .../test_fixed_asset_register.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/erpnext/assets/report/fixed_asset_register/test_fixed_asset_register.py b/erpnext/assets/report/fixed_asset_register/test_fixed_asset_register.py index 2bfbdcda459..6f03bd49d92 100644 --- a/erpnext/assets/report/fixed_asset_register/test_fixed_asset_register.py +++ b/erpnext/assets/report/fixed_asset_register/test_fixed_asset_register.py @@ -86,6 +86,8 @@ class TestFixedAssetRegister(AssetSetup): self.assertIn(asset.name, ids) def test_group_by_asset_category_sums_values(self): + before_net, before_value = self.computers_group_totals() + create_asset(item_code="Macbook Pro", net_purchase_amount=100000, purchase_amount=100000, submit=True) create_asset( item_code="Macbook Pro", @@ -95,10 +97,17 @@ class TestFixedAssetRegister(AssetSetup): submit=True, ) - rows = self.run_report(group_by="Asset Category") - computers = next(row for row in rows if row["asset_category"] == "Computers") - self.assertEqual(computers["net_purchase_amount"], 150000) - self.assertEqual(computers["asset_value"], 150000) + after_net, after_value = self.computers_group_totals() + # assert on the delta so pre-existing Computers assets don't skew the totals + self.assertEqual(after_net - before_net, 150000) + self.assertEqual(after_value - before_value, 150000) + + def computers_group_totals(self): + row = next( + (r for r in self.run_report(group_by="Asset Category") if r["asset_category"] == "Computers"), + None, + ) + return (row["net_purchase_amount"], row["asset_value"]) if row else (0, 0) def test_booked_depreciation_reduces_asset_value(self): asset = create_asset(