Merge pull request #18255 from edx/ziafazal/WL-1388

WL-1388: Added a base MessageType for ace
This commit is contained in:
Zia Fazal
2018-05-30 11:14:04 +05:00
committed by GitHub
9 changed files with 52 additions and 16 deletions

View File

@@ -0,0 +1,13 @@
"""
Base Message types to be used to construct ace messages.
"""
from edx_ace.message import MessageType
from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers
class BaseMessageType(MessageType):
def __init__(self, *args, **kwargs):
super(BaseMessageType, self).__init__(*args, **kwargs)
from_address = configuration_helpers.get_value('email_from_address')
if from_address:
self.options.update({'from_address': from_address}) # pylint: disable=no-member

View File

@@ -0,0 +1,29 @@
"""
Tests for ace message module
"""
import ddt
from mock import patch
from django.test import TestCase
from openedx.core.djangoapps.ace_common.message import BaseMessageType
@ddt.ddt
class TestAbsoluteUrl(TestCase):
@ddt.data(
('test@example.com', True),
('', False),
(None, False),
)
@ddt.unpack
def test_from_email_address_in_message(self, from_address, has_from_address):
"""
Tests presence of from_address option in ace message
"""
with patch("openedx.core.djangoapps.site_configuration.helpers.get_value", return_value=from_address):
ace_message_type = BaseMessageType()
self.assertEqual('from_address' in ace_message_type.options, has_from_address)
if from_address:
self.assertEqual(ace_message_type.options.get('from_address'), from_address)

View File

@@ -1,11 +1,10 @@
import logging
from edx_ace.message import MessageType
from openedx.core.djangoapps.ace_common.message import BaseMessageType
from openedx.core.djangoapps.schedules.config import DEBUG_MESSAGE_WAFFLE_FLAG
class ScheduleMessageType(MessageType):
class ScheduleMessageType(BaseMessageType):
def __init__(self, *args, **kwargs):
super(ScheduleMessageType, self).__init__(*args, **kwargs)
self.log_level = logging.DEBUG if DEBUG_MESSAGE_WAFFLE_FLAG.is_enabled() else None