From 229d3634b13bd845332ea29e0d451bf1a362a78f Mon Sep 17 00:00:00 2001 From: Khushi Rawat <142375893+khushi8112@users.noreply.github.com> Date: Fri, 7 Mar 2025 17:05:38 +0530 Subject: [PATCH] fix(test): calculate total pending days of depreciation correctly --- .../deppreciation_schedule_controller.py | 6 +++++- .../test_asset_depreciation_schedule.py | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/deppreciation_schedule_controller.py b/erpnext/assets/doctype/asset_depreciation_schedule/deppreciation_schedule_controller.py index 277b12cfc5c..c66dee29e2a 100644 --- a/erpnext/assets/doctype/asset_depreciation_schedule/deppreciation_schedule_controller.py +++ b/erpnext/assets/doctype/asset_depreciation_schedule/deppreciation_schedule_controller.py @@ -258,7 +258,11 @@ class DepreciationScheduleController(StraightLineMethod, WDVMethod): def get_total_pending_days_or_years(self): if cint(frappe.db.get_single_value("Accounts Settings", "calculate_depr_using_total_days")): last_depr_date = self.get_last_booked_depreciation_date() - self.total_pending_days = date_diff(self.final_schedule_date, last_depr_date) + 1 + if last_depr_date: + self.total_pending_days = date_diff(self.final_schedule_date, last_depr_date) + 1 + self.total_pending_days = date_diff( + self.final_schedule_date, self.asset_doc.available_for_use_date + ) else: self.total_pending_years = self.pending_months / 12 diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py b/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py index 61e3761719e..a4f761bfb75 100644 --- a/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py +++ b/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py @@ -41,6 +41,7 @@ class TestAssetDepreciationSchedule(IntegrationTestCase): self.assertRaises(frappe.ValidationError, second_asset_depr_schedule.insert) def test_daily_prorata_based_depr_on_sl_method(self): + frappe.db.set_single_value("Accounts Settings", "calculate_depr_using_total_days", 0) asset = create_asset( calculate_depreciation=1, depreciation_method="Straight Line",