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.
65 lines
2.4 KiB
65 lines
2.4 KiB
# -*- coding: utf-8 -*-
|
|
# © 2014-2015 Grupo ESOC <www.grupoesoc.es>
|
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
|
|
|
from os import path
|
|
from openerp.tests.common import TransactionCase
|
|
|
|
|
|
class ForwardMailCase(TransactionCase):
|
|
def setUp(self, *args, **kwargs):
|
|
super(ForwardMailCase, self).setUp(*args, **kwargs)
|
|
self.compose = self.env["mail.compose.message"].create({})
|
|
self.fwd = self.env["mail_forward.compose_message"].create({
|
|
"original_wizard_id": self.compose.id,
|
|
})
|
|
self.partner = self.env["res.partner"].create({"name": __file__})
|
|
self.attachment = self.env["ir.attachment"].create({
|
|
"name": "Testing source",
|
|
"datas_fname": path.basename(__file__),
|
|
"type": "url",
|
|
"url": "file://%s" % __file__,
|
|
})
|
|
|
|
def test_subject(self):
|
|
"""Test correct subject is used."""
|
|
self.compose.subject = "Bad subject"
|
|
good = "Good subject"
|
|
defaults = self.fwd.with_context(default_subject=good).default_get(
|
|
["subject"])
|
|
self.assertEqual(defaults["subject"], good)
|
|
|
|
def test_change_destination(self):
|
|
"""Test what happens when changing the destination."""
|
|
model = self.env["ir.model"].search(
|
|
[("model", "=", self.partner._name)])
|
|
|
|
# Set a partner as destination object
|
|
self.fwd.destination_object_id = self.partner
|
|
self.fwd.change_destination_object()
|
|
|
|
self.assertEqual(self.fwd.model, self.partner._name)
|
|
self.assertEqual(self.fwd.res_id, self.partner.id)
|
|
self.assertEqual(self.fwd.record_name,
|
|
"%s %s" % (model.name, self.partner.name))
|
|
|
|
# Remove the destination object
|
|
self.fwd.destination_object_id = False
|
|
self.fwd.change_destination_object()
|
|
|
|
self.assertFalse(self.fwd.model)
|
|
self.assertFalse(self.fwd.res_id)
|
|
self.assertFalse(self.fwd.record_name)
|
|
|
|
def test_move_attachments(self):
|
|
"""Attachments moved correctly."""
|
|
self.fwd.attachment_ids |= self.attachment
|
|
self.fwd.destination_object_id = self.partner
|
|
self.fwd.change_destination_object()
|
|
self.fwd.body = "body"
|
|
self.fwd.subject = "subject"
|
|
self.fwd.move_attachments = True
|
|
self.fwd.send_mail()
|
|
|
|
self.assertEqual(self.attachment.res_model, self.partner._name)
|
|
self.assertEqual(self.attachment.res_id, self.partner.id)
|