def test_report_fails_if_error(self): with patch('instructor_task.tasks_helper.collect_course_forums_data') as mock_collect_data: mock_collect_data.side_effect = KeyError with patch('instructor_task.tasks_helper._get_current_task') as mock_current_task: mock_current_task.return_value = self.current_task self.assertEqual(push_course_forums_data_to_s3(None, None, self.course.id, None, 'generated'), UPDATE_STATUS_FAILED)
def test_report_stores_results(self, mock_time): start_time = datetime.now(UTC) mock_time.now.return_value = start_time test_header = ['Date', 'Type', 'Number', 'Up Votes', 'Down Votes', 'Net Points'] test_rows = [['row1_field1', 'row1_field2'], ['row2_field1', 'row2_field2']] with patch('instructor_task.tasks_helper._get_current_task') as mock_current_task: mock_current_task.return_value = self.current_task with patch('instructor_task.tasks_helper.collect_course_forums_data') as mock_collect_data: mock_collect_data.return_value = (test_header, test_rows) with patch('instructor_task.models.LocalFSReportStore.store_rows'): return_val = push_course_forums_data_to_s3(None, None, self.course.id, None, 'generated') self.assertEqual(return_val, UPDATE_STATUS_SUCCEEDED)