mirror of
https://gitlab.com/hibou-io/hibou-odoo/suite.git
synced 2025-01-20 12:37:31 +02:00
44 lines
1.8 KiB
Python
44 lines
1.8 KiB
Python
from odoo.addons.hr_holidays.tests.common import TestHrHolidaysBase
|
|
|
|
|
|
class TestLeaves(TestHrHolidaysBase):
|
|
|
|
def setUp(self):
|
|
super(TestLeaves, self).setUp()
|
|
|
|
self.categ = self.env['hr.employee.category'].create({'name': 'Test Category'})
|
|
department = self.env['hr.department'].create({'name': 'Test Department'})
|
|
self.employee = self.env['hr.employee'].create({'name': 'Mark', 'department_id': department.id})
|
|
self.leave_type = self.env['hr.leave.type'].create({
|
|
'name': 'Test Status',
|
|
'color_name': 'red',
|
|
})
|
|
self.test_leave = self.env['hr.leave'].create({
|
|
'holiday_status_id': self.leave_type.id,
|
|
'number_of_days_temp': 5,
|
|
'holiday_type': 'category',
|
|
'category_id': self.categ.id,
|
|
'type': 'add',
|
|
'state': 'draft',
|
|
'grant_by_tag': True,
|
|
})
|
|
|
|
def test_tag_assignment(self):
|
|
self.test_leave.action_confirm()
|
|
self.test_leave.action_approve()
|
|
self.assertEqual(self.employee.leaves_count, 0.0)
|
|
self.employee.write({'category_ids': [(6, False, [self.categ.id])]})
|
|
self.assertEqual(self.employee.leaves_count, 5.0)
|
|
leave = self.env['hr.leave'].search([('employee_id', '=', self.employee.id)])
|
|
self.assertEqual(leave.holiday_status_id.id, self.leave_type.id)
|
|
|
|
def test_double_validation(self):
|
|
self.test_leave.write({'double_validation': True})
|
|
self.test_leave.action_confirm()
|
|
self.test_leave.action_approve()
|
|
self.test_leave.action_validate()
|
|
self.employee.write({'category_ids': [(6, False, [self.categ.id])]})
|
|
leave = self.env['hr.leave'].search([('employee_id', '=', self.employee.id)])
|
|
self.assertEqual(leave.state, 'validate1')
|
|
self.assertEqual(leave.first_approver_id.id, self.env.uid)
|