From 91db1c07487888d7a7b91d0b50d8e24a2aa6548a Mon Sep 17 00:00:00 2001 From: Asmita Hase Date: Fri, 24 Jan 2025 14:21:48 +0530 Subject: [PATCH] chore: fixed test for leave policy assignment based on employee joining date --- .../doctype/leave_allocation/test_earned_leaves.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/hrms/hr/doctype/leave_allocation/test_earned_leaves.py b/hrms/hr/doctype/leave_allocation/test_earned_leaves.py index 7888ac4e57..c488c26de0 100644 --- a/hrms/hr/doctype/leave_allocation/test_earned_leaves.py +++ b/hrms/hr/doctype/leave_allocation/test_earned_leaves.py @@ -137,8 +137,14 @@ def test_alloc_based_on_joining_date(self): # assignment created on the last day of the current month frappe.flags.current_date = get_last_day(getdate()) - - leave_policy_assignments = make_policy_assignment(self.employee, assignment_based_on="Joining Date") + """set end date while making assignment based on Joining date because while start date is fetched from + employee master, make_policy_assignment ends up taking current date as end date if not specified which + causes the date of assignment to be later than the end date of leave period""" + start_date = self.employee.date_of_joining + end_date = get_last_day(add_months(self.employee.date_of_joining, 12)) + leave_policy_assignments = make_policy_assignment( + self.employee, assignment_based_on="Joining Date", start_date=start_date, end_date=end_date + ) leaves_allocated = get_allocated_leaves(leave_policy_assignments[0]) effective_from = frappe.db.get_value( "Leave Policy Assignment", leave_policy_assignments[0], "effective_from" @@ -581,6 +587,8 @@ def make_policy_assignment( "leave_policy": leave_policy.name, "leave_period": leave_period.name, "carry_forward": carry_forward, + "effective_from": start_date, + "effective_to": end_date, } leave_policy_assignments = create_assignment_for_multiple_employees([employee.name], frappe._dict(data))