diff --git a/addons/mail/__manifest__.py b/addons/mail/__manifest__.py index f87807e5ddd..09e9b82a92a 100644 --- a/addons/mail/__manifest__.py +++ b/addons/mail/__manifest__.py @@ -99,7 +99,6 @@ For more specific needs, you may also assign custom-defined actions 'data/mail_activity_data.xml', 'data/security_notifications_templates.xml', 'data/ir_cron_data.xml', - 'data/ir_config_parameter.xml', 'security/mail_security.xml', 'security/ir.model.access.csv', 'views/discuss_public_templates.xml', diff --git a/addons/mail/data/ir_config_parameter.xml b/addons/mail/data/ir_config_parameter.xml deleted file mode 100644 index f8523283883..00000000000 --- a/addons/mail/data/ir_config_parameter.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - mail.activity.gc.delete_overdue_years - 3 - - - diff --git a/addons/mail/data/ir_config_parameter_data.xml b/addons/mail/data/ir_config_parameter_data.xml index 69b5800e8d4..a523ab92b83 100644 --- a/addons/mail/data/ir_config_parameter_data.xml +++ b/addons/mail/data/ir_config_parameter_data.xml @@ -1,23 +1,9 @@ - - - mail.catchall.alias - catchall + + mail.activity.gc.delete_overdue_years + 3 - - - - mail.bounce.alias - bounce - - - - - mail.default.from - notifications - - diff --git a/addons/mail/models/ir_config_parameter.py b/addons/mail/models/ir_config_parameter.py index 9112fd6ed27..a94f2549b22 100644 --- a/addons/mail/models/ir_config_parameter.py +++ b/addons/mail/models/ir_config_parameter.py @@ -20,9 +20,6 @@ class IrConfigParameter(models.Model): # remove existing users, including inactive template user # admin will regain the right via implied_ids on group_system group_user._remove_group(group_mail_template_editor) - # sanitize, normalize; note that False = unlink ICP - elif key in {'mail.bounce.alias', 'mail.catchall.alias'} and value: - value = self.env['mail.alias']._sanitize_alias_name(value) # sanitize and normalize allowed catchall domains elif key == 'mail.catchall.domain.allowed' and value: value = self.env['mail.alias']._sanitize_allowed_domains(value) diff --git a/addons/mail/tests/common.py b/addons/mail/tests/common.py index 0149d0cfec2..fc8c4b7cc32 100644 --- a/addons/mail/tests/common.py +++ b/addons/mail/tests/common.py @@ -101,10 +101,6 @@ class MockEmail(common.BaseCase, MockSmtplibCase): cls.alias_bounce = 'bounce.test' cls.default_from = 'notifications.test' cls.default_from_filter = False - cls.env['ir.config_parameter'].set_param('mail.bounce.alias', cls.alias_bounce) - cls.env['ir.config_parameter'].set_param('mail.catchall.domain', cls.alias_domain) - cls.env['ir.config_parameter'].set_param('mail.catchall.alias', cls.alias_catchall) - cls.env['ir.config_parameter'].set_param('mail.default.from', cls.default_from) cls.env['ir.config_parameter'].set_param('mail.default.from_filter', cls.default_from_filter) # ensure global alias domain for tests: to ease tests, search or create diff --git a/addons/test_mail/tests/test_mail_alias.py b/addons/test_mail/tests/test_mail_alias.py index fe9ffeeb463..af639075c6a 100644 --- a/addons/test_mail/tests/test_mail_alias.py +++ b/addons/test_mail/tests/test_mail_alias.py @@ -46,49 +46,6 @@ class TestMailAlias(TestMailAliasCommon): self.env['ir.config_parameter'].set_param('mail.catchall.domain.allowed', value) self.assertEqual(self.env['ir.config_parameter'].get_param('mail.catchall.domain.allowed'), expected) - @users('admin') - @mute_logger('odoo.models.unlink') - def test_alias_domain_parameters(self): - """ Check the validation of ``mail.bounce.alias`` and ``mail.catchall.alias`` - parameters. """ - ICP = self.env['ir.config_parameter'] - # sanitization - for (bounce_value, catchall_value), (expected_bounce, expected_catchall) in zip( - [ - ('bounce+b4r=*R3wl_#_-$€{}[]()~|\\/!?&%^\'"`~', 'catchall+b4r=*R3wl_#_-$€{}[]()~|\\/!?&%^\'"`~'), - ('bounce+😊', 'catchall+😊'), - ('Bouncâïde 😊', 'Catchôïee 😊'), - ('ぁ', 'ぁぁ'), - ], - [ - ('bounce+b4r=*r3wl_#_-$-{}-~|-/!?&%^\'-`~', 'catchall+b4r=*r3wl_#_-$-{}-~|-/!?&%^\'-`~'), - ('bounce+-', 'catchall+-'), - ('bouncaide-', 'catchoiee-'), - ('?', '??'), - ] - ): - with self.subTest(bounce_value=bounce_value): - ICP.set_param('mail.bounce.alias', bounce_value) - self.assertEqual(ICP.get_param('mail.bounce.alias'), expected_bounce) - with self.subTest(catchall_value=catchall_value): - ICP.set_param('mail.catchall.alias', catchall_value) - self.assertEqual(ICP.get_param('mail.catchall.alias'), expected_catchall) - - # falsy values - for config_value in [False, None, '', ' ']: - with self.subTest(config_value=config_value): - ICP.set_param('mail.bounce.alias', config_value) - self.assertFalse(ICP.get_param('mail.bounce.alias')) - ICP.set_param('mail.catchall.alias', config_value) - self.assertFalse(ICP.get_param('mail.catchall.alias')) - - # check successive param set, should not raise for unicity against itself - for _ in range(2): - ICP.set_param('mail.bounce.alias', 'bounce+double.test') - ICP.set_param('mail.catchall.alias', 'catchall+double.test') - self.assertEqual(ICP.get_param('mail.bounce.alias'), 'bounce+double.test') - self.assertEqual(ICP.get_param('mail.catchall.alias'), 'catchall+double.test') - @users('erp_manager') def test_alias_domain_company_check(self): """ Check constraint trying to avoid ill-defined company setup aka diff --git a/addons/test_mail/tests/test_mail_message.py b/addons/test_mail/tests/test_mail_message.py index 126bb9fd909..f54dbff8557 100644 --- a/addons/test_mail/tests/test_mail_message.py +++ b/addons/test_mail/tests/test_mail_message.py @@ -460,7 +460,6 @@ class TestMessageAccess(MailCommon): def test_mail_message_access_create_reply(self): # TDE FIXME: should it really work ? not sure - catchall makes crash (aka, post will crash also) - self.env['ir.config_parameter'].set_param('mail.catchall.domain', False) self.message.write({'partner_ids': [(4, self.user_employee.partner_id.id)]}) self.env['mail.message'].with_user(self.user_employee).create({'model': 'discuss.channel', 'res_id': self.private_group.id, 'body': 'Test', 'parent_id': self.message.id}) diff --git a/odoo/addons/base/tests/test_ir_mail_server.py b/odoo/addons/base/tests/test_ir_mail_server.py index 827b8584256..cfc4d986c7f 100644 --- a/odoo/addons/base/tests/test_ir_mail_server.py +++ b/odoo/addons/base/tests/test_ir_mail_server.py @@ -51,9 +51,7 @@ class TestIrMailServer(TransactionCase, MockSmtplibCase): @classmethod def setUpClass(cls): super().setUpClass() - # TEMPORARY - for icp in {'mail.default.from', 'mail.catchall.alias', 'mail.bounce.alias', 'mail.catchall.domain', 'mail.default.from_filter'}: - cls.env['ir.config_parameter'].sudo().set_param(icp, False) + cls.env['ir.config_parameter'].sudo().set_param('mail.default.from_filter', False) cls._init_mail_servers() cls.default_bounce_address = 'CACA' cls.default_from_address = 'PROUT'