fix(test): reset test setup

This commit is contained in:
Rucha Mahabal 2022-02-11 20:59:19 +05:30
parent 9b0f9c3442
commit cbaadcf113

View File

@ -22,7 +22,9 @@ class TestLeavePolicyAssignment(unittest.TestCase):
for doctype in ["Leave Period", "Leave Application", "Leave Allocation", "Leave Policy Assignment", "Leave Ledger Entry"]: for doctype in ["Leave Period", "Leave Application", "Leave Allocation", "Leave Policy Assignment", "Leave Ledger Entry"]:
frappe.db.delete(doctype) frappe.db.delete(doctype)
self.employee = get_employee() employee = get_employee()
self.original_doj = employee.date_of_joining
self.employee = employee
def test_grant_leaves(self): def test_grant_leaves(self):
leave_period = get_leave_period() leave_period = get_leave_period()
@ -193,7 +195,6 @@ class TestLeavePolicyAssignment(unittest.TestCase):
}).submit() }).submit()
# joining date set to 2 months back # joining date set to 2 months back
doj = self.employee.date_of_joining
self.employee.date_of_joining = get_first_day(add_months(getdate(), -2)) self.employee.date_of_joining = get_first_day(add_months(getdate(), -2))
self.employee.save() self.employee.save()
@ -219,15 +220,11 @@ class TestLeavePolicyAssignment(unittest.TestCase):
"total_leaves_allocated") "total_leaves_allocated")
self.assertEqual(leaves_allocated, 3) self.assertEqual(leaves_allocated, 3)
# reset DOJ
frappe.db.set_value("Employee", self.employee.name, "date_of_joining", doj)
def test_grant_leaves_on_doj_for_earned_leaves_based_on_leave_period(self): def test_grant_leaves_on_doj_for_earned_leaves_based_on_leave_period(self):
# tests leave alloc based on leave period for earned leaves with "based on doj" configuration in leave type # tests leave alloc based on leave period for earned leaves with "based on doj" configuration in leave type
leave_period, leave_policy = setup_leave_period_and_policy(get_first_day(add_months(getdate(), -2)), based_on_doj=True) leave_period, leave_policy = setup_leave_period_and_policy(get_first_day(add_months(getdate(), -2)), based_on_doj=True)
# joining date set to 2 months back # joining date set to 2 months back
doj = self.employee.date_of_joining
self.employee.date_of_joining = get_first_day(add_months(getdate(), -2)) self.employee.date_of_joining = get_first_day(add_months(getdate(), -2))
self.employee.save() self.employee.save()
@ -257,9 +254,6 @@ class TestLeavePolicyAssignment(unittest.TestCase):
}, "total_leaves_allocated") }, "total_leaves_allocated")
self.assertEqual(leaves_allocated, 3) self.assertEqual(leaves_allocated, 3)
# reset DOJ
frappe.db.set_value("Employee", self.employee.name, "date_of_joining", doj)
def test_grant_leaves_on_doj_for_earned_leaves_based_on_joining_date(self): def test_grant_leaves_on_doj_for_earned_leaves_based_on_joining_date(self):
# tests leave alloc based on joining date for earned leaves with "based on doj" configuration in leave type # tests leave alloc based on joining date for earned leaves with "based on doj" configuration in leave type
leave_type = create_earned_leave_type("Test Earned Leave", based_on_doj=True) leave_type = create_earned_leave_type("Test Earned Leave", based_on_doj=True)
@ -271,7 +265,6 @@ class TestLeavePolicyAssignment(unittest.TestCase):
# joining date set to 2 months back # joining date set to 2 months back
# leave should be allocated for current month too since this day is same as the joining day # leave should be allocated for current month too since this day is same as the joining day
doj = self.employee.date_of_joining
self.employee.date_of_joining = get_first_day(add_months(getdate(), -2)) self.employee.date_of_joining = get_first_day(add_months(getdate(), -2))
self.employee.save() self.employee.save()
@ -297,11 +290,10 @@ class TestLeavePolicyAssignment(unittest.TestCase):
"total_leaves_allocated") "total_leaves_allocated")
self.assertEqual(leaves_allocated, 3) self.assertEqual(leaves_allocated, 3)
# reset DOJ
frappe.db.set_value("Employee", self.employee.name, "date_of_joining", doj)
def tearDown(self): def tearDown(self):
frappe.db.rollback() frappe.db.rollback()
frappe.db.set_value("Employee", self.employee.name, "date_of_joining", self.original_doj)
frappe.flags.current_date = None
def create_earned_leave_type(leave_type, based_on_doj=False): def create_earned_leave_type(leave_type, based_on_doj=False):