diff --git a/project_acceptance/tests/__init__.py b/project_acceptance/tests/__init__.py new file mode 100644 index 00000000..06aed352 --- /dev/null +++ b/project_acceptance/tests/__init__.py @@ -0,0 +1 @@ +from . import test_project_acceptance diff --git a/project_acceptance/tests/test_project_acceptance.py b/project_acceptance/tests/test_project_acceptance.py new file mode 100644 index 00000000..9b3d666b --- /dev/null +++ b/project_acceptance/tests/test_project_acceptance.py @@ -0,0 +1,22 @@ +from odoo.addons.project.tests.test_access_rights import TestAccessRights + + +class TestProjectAcceptance(TestAccessRights): + + def test_10_task_aceptance(self): + exception = self.env.ref('project_acceptance.except_no_project_id').sudo() + exception.active = True + + task = self.create_task('Test task acceptance') + self.assertTrue(task) + self.assertFalse(task.task_acceptance) + self.assertFalse(task.stage_id) + + #exception must exist if stage requires acceptance + stage_in_progress = self.env['project.task.type'].search([('name', '=', 'In Progress')]) + self.assertEqual(stage_in_progress.name, 'In Progress') + task.stage_id = stage_in_progress + stage_in_progress.requires_acceptance = True + stage_done = self.env['project.task.type'].search([('name', '=', 'Done')]) + self.assertTrue(task.exception_ids) + self.assertEqual(task.stage_id.name, 'In Progress')