Odoo18-Base/enterprise-17.0/helpdesk_fsm/tests/test_helpdesk_fsm.py
2025-01-06 10:57:38 +07:00

31 lines
1.3 KiB
Python

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo.addons.helpdesk.tests.common import HelpdeskCommon
from odoo.tests.common import Form
class TestHelpdeskFsm(HelpdeskCommon):
def test_helpdesk_fsm(self):
self.test_team.use_fsm = True
ticket = self.env['helpdesk.ticket'].create({
'name': 'test',
'partner_id': self.partner.id,
'team_id': self.test_team.id,
})
task_form = Form(self.env['helpdesk.create.fsm.task'].with_context(default_helpdesk_ticket_id=ticket.id))
task_form.name = ticket.name
task_form.partner_id = self.partner
task = task_form.save().action_generate_task()
self.assertTrue(task.is_fsm, 'The created task should be in an fsm project.')
self.assertEqual(task.name, ticket.name, 'The created task should have the same name as the ticket.')
self.assertEqual(task.partner_id, ticket.partner_id, 'The created task should have the same customer as the ticket.')
self.assertEqual(task.helpdesk_ticket_id, ticket, 'The created task should be linked to the ticket.')
task.action_fsm_validate()
last_message = ticket.message_ids[0].body
self.assertTrue(task.name in last_message, 'Marking the task as done should be logged on the ticket.')