40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo.tests import Form, tagged, TransactionCase
|
|
from odoo.exceptions import MissingError
|
|
|
|
@tagged('post_install', '-at_install')
|
|
class TestEmployeeDeletion(TransactionCase):
|
|
|
|
def test_employee_deletion(self):
|
|
# Tests an issue with the form view where the employee could be deleted
|
|
employee_a, employee_b = self.env['hr.employee'].create([
|
|
{
|
|
'name': 'A',
|
|
},
|
|
{
|
|
'name': 'B',
|
|
},
|
|
])
|
|
department_a, department_b = self.env['hr.department'].create([
|
|
{
|
|
'name': 'DEP A',
|
|
'manager_id': employee_a.id,
|
|
},
|
|
{
|
|
'name': 'DEP B',
|
|
'manager_id': employee_b.id,
|
|
},
|
|
])
|
|
employee_a.write({
|
|
'parent_id': employee_a.id,
|
|
'coach_id': employee_a.id,
|
|
'department_id': department_a.id,
|
|
})
|
|
try:
|
|
with Form(employee_a) as form:
|
|
form.department_id = department_b
|
|
except MissingError:
|
|
self.fail('The employee should not have been deleted')
|