def test_run_without_queues(self): """Ensure that we exit early if there aren't any queues. """ queue_service = Mock() tasks_ran = run_random(queue_service, None) self.assertEqual(0, tasks_ran)
def test_run_without_queues(self): """Ensure that we exit early if there aren't any queues. """ queue_service = Mock() tasks_ran = run_random(queue_service, None) self.assertEqual(0, tasks_ran)
def test_run_tasks_in_queues_greater_than_max(self, run_task_from_queue): """Ensures that we only run as many tasks as the 'max_tasks' """ queue_service = Mock() run_task_from_queue.side_effect = self._run_side_effect tasks_ran = run_random(queue_service, self.queue_names, max_tasks=3) self.assertEqual(3, tasks_ran) remaining_tasks = 0 for queue, tasks in self.test_queues.iteritems(): remaining_tasks += len(tasks) self.assertEqual(5, remaining_tasks)
def test_run_tasks_in_queues_greater_than_max(self, run_task_from_queue): """Ensures that we only run as many tasks as the 'max_tasks' """ queue_service = Mock() run_task_from_queue.side_effect = self._run_side_effect tasks_ran = run_random(queue_service, self.queue_names, max_tasks=3) self.assertEqual(3, tasks_ran) remaining_tasks = 0 for queue, tasks in self.test_queues.iteritems(): remaining_tasks += len(tasks) self.assertEqual(5, remaining_tasks)
def test_run_tasks_in_queues(self, run_task_from_queue): """Ensures that we run all tasks from popuplated queues. """ queue_service = Mock() run_task_from_queue.side_effect = self._run_side_effect tasks_ran = run_random(queue_service, self.queue_names) self.assertEqual(6, tasks_ran) self.assertIsNotNone(self.test_queues.get('c')) self.assertEqual(2, len(self.test_queues.get('c'))) for queue_name in ['a', 'b', 'd']: tasks = self.test_queues.get(queue_name) self.assertIsNotNone(tasks) self.assertEqual(0, len(tasks))
def test_run_tasks_in_queues(self, run_task_from_queue): """Ensures that we run all tasks from popuplated queues. """ queue_service = Mock() run_task_from_queue.side_effect = self._run_side_effect tasks_ran = run_random(queue_service, self.queue_names) self.assertEqual(6, tasks_ran) self.assertIsNotNone(self.test_queues.get('c')) self.assertEqual(2, len(self.test_queues.get('c'))) for queue_name in ['a', 'b', 'd']: tasks = self.test_queues.get(queue_name) self.assertIsNotNone(tasks) self.assertEqual(0, len(tasks))
def test_run_with_empty_queues(self, run_task_from_queue, random_range, random_seed): """Ensures that we hit all queue names when all queues are empty. """ queue_service = Mock() random_range.return_value = 1 run_task_from_queue.return_value = False test_seed = 555 tasks_ran = run_random(queue_service, self.queue_names, test_seed) self.assertEqual(0, tasks_ran) random_seed.assert_called_once_with(test_seed) self.assertEqual(3, run_task_from_queue.call_count) index = 0 for queue_name in ['b', 'd', 'a']: call_args = run_task_from_queue.call_args_list[index] self.assertEqual(call(queue_service, queue_name), call_args) index += 1
def test_run_with_empty_queues(self, run_task_from_queue, random_range, random_seed): """Ensures that we hit all queue names when all queues are empty. """ queue_service = Mock() random_range.return_value = 1 run_task_from_queue.return_value = False test_seed = 555 tasks_ran = run_random(queue_service, self.queue_names, test_seed) self.assertEqual(0, tasks_ran) random_seed.assert_called_once_with(test_seed) self.assertEqual(3, run_task_from_queue.call_count) index = 0 for queue_name in ['b', 'd', 'a']: call_args = run_task_from_queue.call_args_list[index] self.assertEqual(call(queue_service, queue_name), call_args) index += 1