Move test_deliver_config into the schedules management command base test class
This commit is contained in:
@@ -51,7 +51,9 @@ class TestSendRecurringNudge(ScheduleBaseEmailTestBase):
|
||||
|
||||
# pylint: disable=protected-access
|
||||
tested_task = tasks.ScheduleRecurringNudge
|
||||
deliver_task = tasks._recurring_nudge_schedule_send
|
||||
tested_command = nudge.Command
|
||||
deliver_config = 'deliver_recurring_nudge'
|
||||
expected_offsets = (-3, -10)
|
||||
|
||||
@patch.object(tested_task, 'async_send_task')
|
||||
@@ -78,14 +80,6 @@ class TestSendRecurringNudge(ScheduleBaseEmailTestBase):
|
||||
|
||||
self.assertFalse(mock_schedule_send.apply_async.called)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
def test_delivery_disabled(self, mock_ace):
|
||||
ScheduleConfigFactory.create(site=self.site_config.site, deliver_recurring_nudge=False)
|
||||
|
||||
mock_msg = Mock()
|
||||
tasks._recurring_nudge_schedule_send(self.site_config.site.id, mock_msg)
|
||||
self.assertFalse(mock_ace.send.called)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
@patch.object(tasks.ScheduleUpgradeReminder, 'apply_async')
|
||||
def test_enqueue_disabled(self, mock_ace, mock_apply_async):
|
||||
|
||||
@@ -58,7 +58,9 @@ class TestUpgradeReminder(ScheduleBaseEmailTestBase):
|
||||
__test__ = True
|
||||
|
||||
tested_task = tasks.ScheduleUpgradeReminder
|
||||
deliver_task = tasks._upgrade_reminder_schedule_send
|
||||
tested_command = reminder.Command
|
||||
deliver_config = 'deliver_upgrade_reminder'
|
||||
expected_offsets = (2,)
|
||||
|
||||
has_course_queries = True
|
||||
@@ -72,14 +74,6 @@ class TestUpgradeReminder(ScheduleBaseEmailTestBase):
|
||||
expiration_datetime=datetime.datetime.now(pytz.UTC) + datetime.timedelta(days=30),
|
||||
)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
def test_delivery_disabled(self, mock_ace):
|
||||
ScheduleConfigFactory.create(site=self.site_config.site, deliver_upgrade_reminder=False)
|
||||
|
||||
mock_msg = Mock()
|
||||
tasks._upgrade_reminder_schedule_send(self.site_config.site.id, mock_msg)
|
||||
self.assertFalse(mock_ace.send.called)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
@patch.object(tested_task, 'apply_async')
|
||||
def test_enqueue_disabled(self, mock_ace, mock_apply_async):
|
||||
|
||||
@@ -3,7 +3,7 @@ import ddt
|
||||
import logging
|
||||
|
||||
from freezegun import freeze_time
|
||||
from mock import patch
|
||||
from mock import Mock, patch
|
||||
import pytz
|
||||
|
||||
from courseware.models import DynamicUpgradeDeadlineConfiguration
|
||||
@@ -181,3 +181,19 @@ class ScheduleBaseEmailTestBase(SharedModuleStoreTestCase):
|
||||
# is null.
|
||||
self.assertEqual(mock_schedule_send.apply_async.call_count, 0)
|
||||
|
||||
@ddt.data(True, False)
|
||||
@patch.object(tasks, 'ace')
|
||||
@patch.object(tasks, 'Message')
|
||||
def test_deliver_config(self, is_enabled, mock_message, mock_ace):
|
||||
schedule_config_kwargs = {
|
||||
'site': self.site_config.site,
|
||||
self.deliver_config: is_enabled,
|
||||
}
|
||||
ScheduleConfigFactory.create(**schedule_config_kwargs)
|
||||
|
||||
mock_msg = Mock()
|
||||
self.deliver_task(self.site_config.site.id, mock_msg)
|
||||
if is_enabled:
|
||||
self.assertTrue(mock_ace.send.called)
|
||||
else:
|
||||
self.assertFalse(mock_ace.send.called)
|
||||
|
||||
Reference in New Issue
Block a user