mirror of
https://github.com/bringout/oca-technical.git
synced 2026-04-19 07:12:04 +02:00
83 lines
3.2 KiB
Python
83 lines
3.2 KiB
Python
# Copyright 2017 Camptocamp SA
|
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
|
from freezegun import freeze_time
|
|
|
|
import odoo.tests.common as test_common
|
|
|
|
|
|
class TestMaintenancePlanBase(test_common.TransactionCase):
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
super().setUpClass()
|
|
# HACK https://github.com/spulec/freezegun/issues/485
|
|
freezer = freeze_time("2023-01-25 15:30:00")
|
|
freezer.__enter__()
|
|
cls.addClassCleanup(freezer.__exit__)
|
|
# Remove this variable in v16 and put instead:
|
|
# from odoo.addons.base.tests.common import DISABLED_MAIL_CONTEXT
|
|
DISABLED_MAIL_CONTEXT = {
|
|
"tracking_disable": True,
|
|
"mail_create_nolog": True,
|
|
"mail_create_nosubscribe": True,
|
|
"mail_notrack": True,
|
|
"no_reset_password": True,
|
|
}
|
|
cls.env = cls.env(context=dict(cls.env.context, **DISABLED_MAIL_CONTEXT))
|
|
cls.maintenance_request_obj = cls.env["maintenance.request"]
|
|
cls.maintenance_plan_obj = cls.env["maintenance.plan"]
|
|
cls.maintenance_equipment_obj = cls.env["maintenance.equipment"]
|
|
cls.cron = cls.env.ref("maintenance.maintenance_requests_cron")
|
|
cls.weekly_kind = cls.env.ref("maintenance_plan.maintenance_kind_weekly")
|
|
cls.done_stage = cls.env.ref("maintenance.stage_3")
|
|
|
|
cls.equipment_1 = cls.maintenance_equipment_obj.create({"name": "Laptop 1"})
|
|
cls.maintenance_plan_1 = cls.maintenance_plan_obj.create(
|
|
{
|
|
"equipment_id": cls.equipment_1.id,
|
|
"start_maintenance_date": "2023-01-25",
|
|
"interval": 1,
|
|
"interval_step": "month",
|
|
"maintenance_plan_horizon": 2,
|
|
"planning_step": "month",
|
|
}
|
|
)
|
|
cls.maintenance_plan_2 = cls.maintenance_plan_obj.create(
|
|
{
|
|
"equipment_id": cls.equipment_1.id,
|
|
"maintenance_kind_id": cls.weekly_kind.id,
|
|
"interval": 1,
|
|
"interval_step": "week",
|
|
"maintenance_plan_horizon": 2,
|
|
"planning_step": "month",
|
|
}
|
|
)
|
|
cls.maintenance_plan_3 = cls.maintenance_plan_obj.create(
|
|
{
|
|
"name": "My custom plan",
|
|
"equipment_id": cls.equipment_1.id,
|
|
"interval": 2,
|
|
"interval_step": "week",
|
|
"maintenance_plan_horizon": 2,
|
|
"planning_step": "month",
|
|
}
|
|
)
|
|
cls.maintenance_plan_4 = cls.maintenance_plan_obj.create(
|
|
{
|
|
"name": "Plan without equipment",
|
|
"maintenance_kind_id": cls.weekly_kind.id,
|
|
"interval": 1,
|
|
"interval_step": "week",
|
|
"maintenance_plan_horizon": 2,
|
|
"planning_step": "month",
|
|
}
|
|
)
|
|
cls.maintenance_plan_5 = cls.maintenance_plan_obj.create(
|
|
{
|
|
"start_maintenance_date": "2023-01-25",
|
|
"interval": 1,
|
|
"interval_step": "month",
|
|
"maintenance_plan_horizon": 2,
|
|
"planning_step": "month",
|
|
}
|
|
)
|
|
cls.report_obj = cls.env["ir.actions.report"]
|