diff --git a/hr_employee_second_lastname/models/hr_employee.py b/hr_employee_second_lastname/models/hr_employee.py index edf085ccdda..5a1ce0c9068 100644 --- a/hr_employee_second_lastname/models/hr_employee.py +++ b/hr_employee_second_lastname/models/hr_employee.py @@ -75,7 +75,7 @@ def _prepare_vals_on_write_firstname_lastname(self, vals): def _update_partner_firstname(self): for employee in self: partners = employee.mapped("user_id.partner_id") - partners |= employee.mapped("address_home_id") + partners |= employee.mapped("work_contact_id") partners.write( { "firstname": employee.firstname, diff --git a/hr_employee_second_lastname/tests/test_hr_employee_second_lastname.py b/hr_employee_second_lastname/tests/test_hr_employee_second_lastname.py index 8f1ff1eb329..ecbfa983d42 100644 --- a/hr_employee_second_lastname/tests/test_hr_employee_second_lastname.py +++ b/hr_employee_second_lastname/tests/test_hr_employee_second_lastname.py @@ -103,6 +103,14 @@ def test_auto_init_name(self): self.assertEqual(employee_without_name, self.employee_model) def test_change_name(self): + is_partner_lastname_installed = ( + self.employee_model._is_partner_firstname_installed() + ) + work_contact = self.employee1_id.work_contact_id + if is_partner_lastname_installed: + self.assertEqual(self.employee1_id.firstname, work_contact.firstname) + self.assertEqual(self.employee1_id.lastname, work_contact.lastname) + self.assertEqual(self.employee1_id.lastname2, work_contact.lastname2) self.employee1_id.write({"name": "Pedro Martinez Torres"}) self.employee1_id.invalidate_recordset() @@ -110,6 +118,12 @@ def test_change_name(self): self.assertEqual(self.employee1_id.lastname, "Martinez") self.assertEqual(self.employee1_id.lastname2, "Torres") + if is_partner_lastname_installed: + work_contact.invalidate_recordset(["firstname", "lastname", "lastname2"]) + self.assertEqual(work_contact.firstname, "Pedro") + self.assertEqual(work_contact.lastname, "Martinez") + self.assertEqual(work_contact.lastname2, "Torres") + def test_change_name_with_space(self): self.employee1_id.write({"name": " Jean-Pierre Carnaud-Eyck"}) self.employee1_id.invalidate_recordset()