From 4f6e3242b8801e63b171103ebf2ff4744a94971c Mon Sep 17 00:00:00 2001 From: Tonow-c2c Date: Tue, 27 Nov 2018 17:15:34 +0100 Subject: [PATCH] fixup! fixup! [ADD][mail_parent_recipient][10] Add module to use mail of first partner --- mail_parent_recipient/README.rst | 0 .../tests/test_mail_parent_recipient.py | 98 +++++++++---------- 2 files changed, 48 insertions(+), 50 deletions(-) create mode 100644 mail_parent_recipient/README.rst diff --git a/mail_parent_recipient/README.rst b/mail_parent_recipient/README.rst new file mode 100644 index 00000000..e69de29b diff --git a/mail_parent_recipient/tests/test_mail_parent_recipient.py b/mail_parent_recipient/tests/test_mail_parent_recipient.py index cd3cd946..04be0927 100644 --- a/mail_parent_recipient/tests/test_mail_parent_recipient.py +++ b/mail_parent_recipient/tests/test_mail_parent_recipient.py @@ -11,7 +11,7 @@ class TestMailTemplate(TestMail): super(TestMailTemplate, self).setUp() self.Users = self.env['res.users'] - self.res_parter = self.env['res.partner'] + self.res_partner = self.env['res.partner'] self.mail_template = self.env['mail.template'] self.mail_comp_msg = self.env['mail.compose.message'] @@ -21,7 +21,7 @@ class TestMailTemplate(TestMail): 'email': 'company.mail.test@company' } - self.company_test = self.res_parter.create(company_vals) + self.company_test = self.res_partner.create(company_vals) # Partners test 1 without email partner_no_mail_vals = { @@ -36,11 +36,11 @@ class TestMailTemplate(TestMail): 'parent_id': self.company_test.id, } - self.partner_no_mail = self.res_parter.create(partner_no_mail_vals) - self.partner_with_mail = self.res_parter.create(partner_with_mail_vals) + self.partner_no_mail = self.res_partner.create(partner_no_mail_vals) + self.partner_with_mail = self.res_partner.create(partner_with_mail_vals) def create_mail_composer(self, partner_to_send_id): - self.email_template = self.env['mail.template'].create({ + email_template = self.env['mail.template'].create({ 'model_id': self.env['ir.model'].search([ ('model', '=', 'mail.channel') ], limit=1).id, @@ -51,56 +51,54 @@ class TestMailTemplate(TestMail): 'partner_to': '%s' % (partner_to_send_id), }) - self.composer = self.mail_comp_msg.with_context({ + composer = self.mail_comp_msg.with_context({ 'default_composition_mode': 'comment', 'default_model': 'mail.channel', 'default_use_template': True, }).create({ 'subject': 'Forget me subject', 'body': 'Dummy body', - 'template_id': self.email_template.id + 'template_id': email_template.id }) + values = composer.onchange_template_id( + email_template.id, + 'comment', 'mail.channel', self.group_pigs.id + )['value'] - return self.composer - - # def test_1_mail_send_to_partner_no_mail(self): - # """ - # Mail should only send with company mail - # even if is sended to partner_no_mail - # """ - # import pdb; pdb.set_trace() - # mail_composer = self.create_mail_composer(self.partner_no_mail.id) - # mail_id = self.email_template.send_mail(self.partner_no_mail.id) - # mail = self.env['mail.mail'].browse(mail_id) - # - # self.assertEqual(mail.recipient_ids, self.company_test.id) - # self.assertNotEqual(mail.recipient_ids, self.partner_no_mail.id) - # self.assertNotEqual(mail.recipient_ids, self.partner_with_mail.id) - # self.assertEqual(len(mail.recipient_ids), 1) - # - # def test_2_mail_send_to_partner_with_mail(self): - # """ - # Mail should only send with company mail - # even if is sended to partner_with_mail - # """ - # mail_composer = self.create_mail_composer(self.partner_no_mail.id) - # mail_id = self.email_template.send_mail(self.partner_with_mail.id) - # mail = self.env['mail.mail'].browse(mail_id) - # - # self.assertEqual(mail.recipient_ids, self.company_test.id) - # self.assertNotEqual(mail.recipient_ids, self.partner_no_mail.id) - # self.assertNotEqual(mail.recipient_ids, self.partner_with_mail.id) - # self.assertEqual(len(mail.recipient_ids), 1) - # - # def test_3_mail_send_to_company_test(self): - # """ - # Mail should only send with company mail - # """ - # mail_composer = self.create_mail_composer(self.partner_no_mail.id) - # mail_id = self.email_template.send_mail(self.company_test.id) - # mail = self.env['mail.mail'].browse(mail_id) - # - # self.assertEqual(mail.recipient_ids, self.company_test.id) - # self.assertNotEqual(mail.recipient_ids, self.partner_no_mail.id) - # self.assertNotEqual(mail.recipient_ids, self.partner_with_mail.id) - # self.assertEqual(len(mail.recipient_ids), 1) + # use _convert_to_cache to return a browse record list from command list or id list for x2many fields + values = composer._convert_to_record(composer._convert_to_cache(values)) + recipients = values['partner_ids'] + + return recipients + + def test_1_mail_send_to_partner_no_mail(self): + """ + Mail should only send with company mail + even if is sended to partner_no_mail + """ + recipients = self.create_mail_composer(self.partner_no_mail.id) + + self.assertEqual(recipients.email, self.company_test.email) + self.assertNotEqual(recipients.email, self.partner_no_mail.email) + self.assertNotEqual(recipients.email, self.partner_with_mail.email) + + def test_2_mail_send_to_partner_with_mail(self): + """ + Mail should only send with company mail + even if is sended to partner_with_mail + """ + recipients = self.create_mail_composer(self.partner_with_mail.id) + + self.assertNotEqual(recipients.email, self.company_test.email) + self.assertNotEqual(recipients.email, self.partner_no_mail.email) + self.assertEqual(recipients.email, self.partner_with_mail.email) + + def test_3_mail_send_to_company_test(self): + """ + Mail should only send with company mail + """ + recipients = self.create_mail_composer(self.partner_no_mail.id) + + self.assertEqual(recipients.email, self.company_test.email) + self.assertNotEqual(recipients.email, self.partner_no_mail.email) + self.assertNotEqual(recipients.email, self.partner_with_mail.email)