[IMP] project: replaced except_orm by AccessError in tests
Comments were referring to Warning rather than AccessError but: - Warning is deprecated - The functions that are tested actually raise AccessError
This commit is contained in:
committed by
David Monjoie
parent
25dcc5e03c
commit
f077a6c7bd
@@ -1,10 +1,9 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from openerp.addons.project.tests.test_project_base import TestProjectBase
|
||||
from openerp.exceptions import AccessError
|
||||
from openerp.exceptions import except_orm
|
||||
from openerp.tools import mute_logger
|
||||
from odoo.addons.project.tests.test_project_base import TestProjectBase
|
||||
from odoo.exceptions import AccessError
|
||||
from odoo.tools import mute_logger
|
||||
|
||||
|
||||
class TestPortalProjectBase(TestProjectBase):
|
||||
@@ -56,9 +55,7 @@ class TestPortalProject(TestPortalProjectBase):
|
||||
# Do: Chell reads project -> ok (portal ok public)
|
||||
pigs.sudo(self.user_portal).read(['user_id'])
|
||||
# Do: Donovan reads project -> ko (public ko portal)
|
||||
# TODO: Change the except_orm to Warning ( Because here it's call check_access_rule
|
||||
# which still generate exception in except_orm.)
|
||||
self.assertRaises(except_orm, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
# Test: no access right to project.task
|
||||
self.assertRaises(AccessError, self.env['project.task'].sudo(self.user_public).search, [])
|
||||
# Data: task follower cleaning
|
||||
@@ -80,14 +77,12 @@ class TestPortalProject(TestPortalProjectBase):
|
||||
# Do: Bert reads project -> crash, no group
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_noone).read, ['user_id'])
|
||||
# Do: Chell reads project -> ko (portal ko employee)
|
||||
# TODO Change the except_orm to Warning
|
||||
self.assertRaises(except_orm, pigs.sudo(self.user_portal).read, ['user_id'])
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_portal).read, ['user_id'])
|
||||
# Test: no project task visible + assigned
|
||||
tasks = self.env['project.task'].sudo(self.user_portal).search([('project_id', '=', pigs.id)])
|
||||
self.assertFalse(tasks.ids, 'access rights: portal user should not see tasks of an employees project, even if assigned')
|
||||
# Do: Donovan reads project -> ko (public ko employee)
|
||||
# TODO Change the except_orm to Warning
|
||||
self.assertRaises(except_orm, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
# Do: project user is employee and can create a task
|
||||
tmp_task = self.env['project.task'].sudo(self.user_projectuser).with_context({'mail_create_nolog': True}).create({
|
||||
'name': 'Pigs task',
|
||||
@@ -100,7 +95,6 @@ class TestPortalProject(TestPortalProjectBase):
|
||||
pigs.write({'privacy_visibility': 'followers'})
|
||||
|
||||
# Do: Alfred reads project -> ko (employee ko followers)
|
||||
# TODO Change the except_orm to Warning
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_projectuser).read, ['user_id'])
|
||||
# Test: no project task visible
|
||||
tasks = self.env['project.task'].sudo(self.user_projectuser).search([('project_id', '=', pigs.id)])
|
||||
@@ -111,15 +105,14 @@ class TestPortalProject(TestPortalProjectBase):
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_noone).read, ['user_id'])
|
||||
|
||||
# Do: Chell reads project -> ko (portal ko employee)
|
||||
self.assertRaises(except_orm, pigs.sudo(self.user_portal).read, ['user_id'])
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_portal).read, ['user_id'])
|
||||
# Test: no project task visible
|
||||
tasks = self.env['project.task'].sudo(self.user_portal).search([('project_id', '=', pigs.id)])
|
||||
self.assertEqual(tasks, self.task_3,
|
||||
'access rights: portal user should not see tasks of a not-followed followers project, only assigned')
|
||||
|
||||
# Do: Donovan reads project -> ko (public ko employee)
|
||||
# TODO Change the except_orm to Warning
|
||||
self.assertRaises(except_orm, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
|
||||
# Data: subscribe Alfred, Chell and Donovan as follower
|
||||
pigs.message_subscribe_users(user_ids=[self.user_projectuser.id, self.user_portal.id, self.user_public.id])
|
||||
@@ -133,17 +126,16 @@ class TestPortalProject(TestPortalProjectBase):
|
||||
# Do: Chell reads project -> ok (follower ok follower)
|
||||
pigs.sudo(self.user_portal).read(['user_id'])
|
||||
# Do: Donovan reads project -> ko (public ko follower even if follower)
|
||||
# TODO Change the except_orm to Warning
|
||||
self.assertRaises(except_orm, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
self.assertRaises(AccessError, pigs.sudo(self.user_public).read, ['user_id'])
|
||||
# Do: project user is follower of the project and can create a task
|
||||
self.env['project.task'].sudo(self.user_projectuser.id).with_context({'mail_create_nolog': True}).create({
|
||||
'name': 'Pigs task', 'project_id': pigs.id
|
||||
})
|
||||
# not follower user should not be able to create a task
|
||||
pigs.sudo(self.user_projectuser).message_unsubscribe_users(user_ids=[self.user_projectuser.id])
|
||||
self.assertRaises(except_orm, self.env['project.task'].sudo(self.user_projectuser).with_context({
|
||||
self.assertRaises(AccessError, self.env['project.task'].sudo(self.user_projectuser).with_context({
|
||||
'mail_create_nolog': True}).create, {'name': 'Pigs task', 'project_id': pigs.id})
|
||||
|
||||
# Do: project user can create a task without project
|
||||
self.assertRaises(except_orm, self.env['project.task'].sudo(self.user_projectuser).with_context({
|
||||
self.assertRaises(AccessError, self.env['project.task'].sudo(self.user_projectuser).with_context({
|
||||
'mail_create_nolog': True}).create, {'name': 'Pigs task', 'project_id': pigs.id})
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from openerp.addons.mail.tests.common import TestMail
|
||||
from odoo.addons.mail.tests.common import TestMail
|
||||
|
||||
|
||||
class TestProjectBase(TestMail):
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from .test_project_base import TestProjectBase
|
||||
from openerp.exceptions import AccessError
|
||||
from openerp.tools import mute_logger
|
||||
from odoo.tools import mute_logger
|
||||
|
||||
|
||||
EMAIL_TPL = """Return-Path: <whatever-2a840@postmaster.twitter.com>
|
||||
@@ -11,7 +10,7 @@ X-Original-To: {to}
|
||||
Delivered-To: {to}
|
||||
To: {to}
|
||||
cc: {cc}
|
||||
Received: by mail1.openerp.com (Postfix, from userid 10002)
|
||||
Received: by mail1.odoo.com (Postfix, from userid 10002)
|
||||
id 5DF9ABFB2A; Fri, 10 Aug 2012 16:16:39 +0200 (CEST)
|
||||
Message-ID: {msg_id}
|
||||
Date: Tue, 29 Nov 2011 12:43:21 +0530
|
||||
|
||||
Reference in New Issue
Block a user