Files
Odoo-18.0-20251222/maintenance_equipment_hierarchy/tests/test_maintenance_equipment_hierarchy.py
tocmo0nlord adbe430761
Some checks failed
pre-commit / pre-commit (push) Has been cancelled
tests / Detect unreleased dependencies (push) Has been cancelled
tests / test with OCB (push) Has been cancelled
tests / test with Odoo (push) Has been cancelled
Initial commit: Odoo 18.0-20251222 extra-addons
2026-03-13 20:43:25 +00:00

59 lines
2.3 KiB
Python

# Copyright 2020 ForgeFlow S.L. (https://forgeflow.com)
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
from odoo.exceptions import UserError
from odoo.addons.base.tests.common import BaseCommon
class TestMaintenanceEquipmentHierarchy(BaseCommon):
@classmethod
def setUpClass(cls):
super().setUpClass()
cls.Equipment = cls.env["maintenance.equipment"]
cls.equipment1 = cls.Equipment.create({"name": "Equipment 1"})
cls.equipment1_1 = cls.Equipment.create({"name": "Equipment 1.1"})
cls.equipment1_2 = cls.Equipment.create({"name": "Equipment 1.2"})
def test_01_hierarchy(self):
self.equipment1_1.parent_id = self.equipment1
res = self.equipment1.preview_child_list()
self.assertEqual(res["domain"], [("parent_id", "=", self.equipment1.id)])
def test_02_recursion(self):
with self.assertRaises(UserError):
self.equipment1.parent_id = self.equipment1
def test_03_name_get_display_complete(self):
self.equipment1_1.parent_id = self.equipment1
equipment1_1_complete_name = (
self.equipment1.name + " / " + self.equipment1_1.name
)
self.assertEqual(self.equipment1.name_get()[0][1], self.equipment1.name)
self.assertEqual(self.equipment1.complete_name, self.equipment1.name)
self.assertEqual(self.equipment1.display_name, self.equipment1.name)
self.assertEqual(self.equipment1_1.name_get()[0][1], equipment1_1_complete_name)
self.assertEqual(self.equipment1_1.complete_name, equipment1_1_complete_name)
self.assertEqual(self.equipment1_1.display_name, equipment1_1_complete_name)
def test_04_child_count_computation(self):
# Set parent-child relationships
self.equipment1_1.parent_id = self.equipment1
self.equipment1_2.parent_id = self.equipment1
# Test the child_count computation
self.equipment1._compute_child_count()
# Assert that the child_count is correct (2 children)
self.assertEqual(self.equipment1.child_count, 2)
# Remove one child and recompute
self.equipment1_1.parent_id = False
self.equipment1._compute_child_count()
# Assert that the child_count is updated (1 child)
self.assertEqual(self.equipment1.child_count, 1)