Move test_enqeue_config into the schedules management command base test class
This commit is contained in:
@@ -54,6 +54,7 @@ class TestSendRecurringNudge(ScheduleBaseEmailTestBase):
|
||||
deliver_task = tasks._recurring_nudge_schedule_send
|
||||
tested_command = nudge.Command
|
||||
deliver_config = 'deliver_recurring_nudge'
|
||||
enqueue_config = 'enqueue_recurring_nudge'
|
||||
expected_offsets = (-3, -10)
|
||||
|
||||
@patch.object(tested_task, 'async_send_task')
|
||||
@@ -80,20 +81,6 @@ class TestSendRecurringNudge(ScheduleBaseEmailTestBase):
|
||||
|
||||
self.assertFalse(mock_schedule_send.apply_async.called)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
@patch.object(tasks.ScheduleUpgradeReminder, 'apply_async')
|
||||
def test_enqueue_disabled(self, mock_ace, mock_apply_async):
|
||||
ScheduleConfigFactory.create(site=self.site_config.site, enqueue_recurring_nudge=False)
|
||||
|
||||
current_datetime = datetime.datetime(2017, 8, 1, tzinfo=pytz.UTC)
|
||||
self.tested_task.enqueue(
|
||||
self.site_config.site,
|
||||
current_datetime,
|
||||
3
|
||||
)
|
||||
self.assertFalse(mock_apply_async.called)
|
||||
self.assertFalse(mock_ace.send.called)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
@patch.object(tested_task, 'async_send_task')
|
||||
@ddt.data(
|
||||
|
||||
@@ -61,6 +61,7 @@ class TestUpgradeReminder(ScheduleBaseEmailTestBase):
|
||||
deliver_task = tasks._upgrade_reminder_schedule_send
|
||||
tested_command = reminder.Command
|
||||
deliver_config = 'deliver_upgrade_reminder'
|
||||
enqueue_config = 'enqueue_upgrade_reminder'
|
||||
expected_offsets = (2,)
|
||||
|
||||
has_course_queries = True
|
||||
@@ -74,20 +75,6 @@ class TestUpgradeReminder(ScheduleBaseEmailTestBase):
|
||||
expiration_datetime=datetime.datetime.now(pytz.UTC) + datetime.timedelta(days=30),
|
||||
)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
@patch.object(tested_task, 'apply_async')
|
||||
def test_enqueue_disabled(self, mock_ace, mock_apply_async):
|
||||
ScheduleConfigFactory.create(site=self.site_config.site, enqueue_upgrade_reminder=False)
|
||||
|
||||
current_day = datetime.datetime(2017, 8, 1, tzinfo=pytz.UTC)
|
||||
self.tested_task.enqueue(
|
||||
self.site_config.site,
|
||||
current_day,
|
||||
day_offset=3,
|
||||
)
|
||||
self.assertFalse(mock_apply_async.called)
|
||||
self.assertFalse(mock_ace.send.called)
|
||||
|
||||
@patch.object(tasks, 'ace')
|
||||
@patch.object(tested_task, 'async_send_task')
|
||||
@ddt.data(
|
||||
|
||||
@@ -197,3 +197,20 @@ class ScheduleBaseEmailTestBase(SharedModuleStoreTestCase):
|
||||
self.assertTrue(mock_ace.send.called)
|
||||
else:
|
||||
self.assertFalse(mock_ace.send.called)
|
||||
|
||||
@ddt.data(True, False)
|
||||
def test_enqueue_config(self, is_enabled):
|
||||
schedule_config_kwargs = {
|
||||
'site': self.site_config.site,
|
||||
self.enqueue_config: is_enabled,
|
||||
}
|
||||
ScheduleConfigFactory.create(**schedule_config_kwargs)
|
||||
|
||||
current_datetime = datetime.datetime(2017, 8, 1, tzinfo=pytz.UTC)
|
||||
with patch.object(self.tested_task, 'apply_async') as mock_apply_async:
|
||||
self.tested_task.enqueue(self.site_config.site, current_datetime, 3)
|
||||
|
||||
if is_enabled:
|
||||
self.assertTrue(mock_apply_async.called)
|
||||
else:
|
||||
self.assertFalse(mock_apply_async.called)
|
||||
|
||||
Reference in New Issue
Block a user