mirror of
https://github.com/bringout/oca-ocb-hr.git
synced 2026-04-26 14:12:02 +02:00
Initial commit: Hr packages
This commit is contained in:
commit
62531cd146
2820 changed files with 1432848 additions and 0 deletions
|
|
@ -0,0 +1,68 @@
|
|||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from datetime import datetime
|
||||
|
||||
from .common import TestContractCommon
|
||||
|
||||
|
||||
class TestHrEmployee(TestContractCommon):
|
||||
|
||||
def create_contract(self, state, kanban_state, start, end=None):
|
||||
return self.env['hr.contract'].create({
|
||||
'name': 'Contract',
|
||||
'employee_id': self.employee.id,
|
||||
'state': state,
|
||||
'kanban_state': kanban_state,
|
||||
'wage': 1,
|
||||
'date_start': start,
|
||||
'date_end': end,
|
||||
})
|
||||
|
||||
def test_employee_first_contract_date_base_case(self):
|
||||
'''
|
||||
Test if when a contract is attached to an employee, the
|
||||
first_contract_date is updated accordingly.
|
||||
'''
|
||||
start = datetime.strptime('2015-11-01', '%Y-%m-%d').date()
|
||||
self.create_contract('open', 'normal', start)
|
||||
self.assertEqual(
|
||||
self.employee.first_contract_date, start,
|
||||
'The first_contract_date should be the start date of the contract.'
|
||||
)
|
||||
|
||||
def test_employee_first_contract_date_archived_contract(self):
|
||||
'''
|
||||
Test if when a contract is attached to an employee, the
|
||||
first_contract_date is updated accordingly when archived.
|
||||
'''
|
||||
start = datetime.strptime('2015-11-01', '%Y-%m-%d').date()
|
||||
contract = self.create_contract('open', 'normal', start)
|
||||
self.assertEqual(
|
||||
self.employee.first_contract_date, start,
|
||||
'The first_contract_date should be the start date of the contract.',
|
||||
)
|
||||
contract.action_archive()
|
||||
self.assertEqual(
|
||||
self.employee.first_contract_date, False,
|
||||
'The first_contract_date should be False when the contract is archived. '
|
||||
'Because no active contract is attached to the employee.',
|
||||
)
|
||||
|
||||
def test_employee_first_contract_date_multiple_contracts(self):
|
||||
'''
|
||||
Test if when multiple contracts are attached to an employee, the
|
||||
first_contract_date is updated accordingly.
|
||||
'''
|
||||
start1 = datetime.strptime('2015-11-01', '%Y-%m-%d').date()
|
||||
start2 = datetime.strptime('2016-11-01', '%Y-%m-%d').date()
|
||||
contract1 = self.create_contract('open', 'normal', start1)
|
||||
self.create_contract('draft', 'normal', start2)
|
||||
self.assertEqual(
|
||||
self.employee.first_contract_date, start1,
|
||||
'The first_contract_date should be the start date of the first contract.',
|
||||
)
|
||||
contract1.action_archive()
|
||||
self.assertEqual(
|
||||
self.employee.first_contract_date, start2,
|
||||
'The first_contract_date should be the start date of the second contract.',
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue