You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.8 KiB
48 lines
1.8 KiB
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
|
|
|
from odoo.tests.common import TransactionCase
|
|
from odoo.addons.mail.models.mail_activity import MailActivity
|
|
from datetime import date
|
|
from ..hooks import pre_init_hook, post_load_hook
|
|
|
|
|
|
class TestMailActivityDoneMethods(TransactionCase):
|
|
|
|
def setUp(self):
|
|
super(TestMailActivityDoneMethods, self).setUp()
|
|
|
|
self.employee = self.env['res.users'].create({
|
|
'company_id': self.env.ref("base.main_company").id,
|
|
'name': "Test User",
|
|
'login': "testuser",
|
|
'groups_id': [(6, 0, [self.env.ref('base.group_user').id])]
|
|
})
|
|
activity_type = self.env['mail.activity.type'].search(
|
|
[('name', '=', 'Meeting')], limit=1)
|
|
self.act1 = self.env['mail.activity'].create({
|
|
'activity_type_id': activity_type.id,
|
|
'res_id': self.env.ref("base.res_partner_1").id,
|
|
'res_model_id': self.env['ir.model']._get('res.partner').id,
|
|
'user_id': self.employee.id,
|
|
'date_deadline': date.today(),
|
|
})
|
|
|
|
def test_pre_init_hook(self):
|
|
pre_init_hook(self.env.cr)
|
|
self.env.cr.execute("""
|
|
SELECT * FROM mail_activity WHERE done=True
|
|
""")
|
|
self.assertEquals(self.env.cr.fetchone(), None)
|
|
|
|
def test_post_load_hook(self):
|
|
post_load_hook()
|
|
self.assertTrue(hasattr(MailActivity, 'action_feedback_original'))
|
|
|
|
def test_mail_activity_done(self):
|
|
self.act1.done = True
|
|
self.assertEquals(self.act1.state, 'done')
|
|
|
|
def test_activity_user_count(self):
|
|
act_count = self.employee.sudo(self.employee).activity_user_count()
|
|
self.assertEqual(len(act_count), 1,
|
|
"Number of activities should be equal to one")
|