Exemplo n.º 1
0
 def test_success_status(self):
     queueable(models.TaskQueue.throttle).queue(
     )  # Re-use existing model as decorator target
     o = TaskInfo.objects.last()
     with patch("django_tasker.models.TaskQueue.throttle") as method:
         o.execute()
     self.assertIsNone(o.status_message)
     self.assertEqual(models.TaskStatus.success, o.status)
Exemplo n.º 2
0
 def test_execute_arguments(self):
     stub = models.TaskQueue.objects.create()
     queueable(stub.process_batch).queue(
         1, 2, some='foo')  # Re-use existing model as decorator target
     o = TaskInfo.objects.last()
     with patch("django_tasker.models.TaskQueue.process_batch") as method:
         o.execute()
         method.assert_called_with(1, 2, some='foo')
Exemplo n.º 3
0
 def test_execute_smoke(self):
     stub = models.TaskQueue.objects.create()
     queueable(
         stub.throttle).queue('ignored but needed by test'
                              )  # Re-use existing model as decorator target
     o = TaskInfo.objects.last()
     o.execute()
     self.assertEqual(None, o.status_message)
     self.assertEqual(o.status, models.TaskStatus.success)
Exemplo n.º 4
0
 def test_queue_on_class_method(self):
     queueable(models.TaskQueue.throttle).queue(
         1, 2, some='foo')  # Re-use existing model as decorator target
     o = TaskInfo.objects.last()
     self.assertEqual('django_tasker.models.TaskQueue.throttle',
                      o.target.name)
     self.assertEqual(
         json.dumps({
             'args': [1, 2],
             'kwargs': {
                 'some': 'foo'
             }
         }), o.payload)
     self.assertIsNotNone(o.eta)
     self.assertEqual(models.TaskStatus.queued, o.status)
Exemplo n.º 5
0
 def test_execute_smoke(self):
     t = queueable(models.TaskInfo.process_one).queue(
         213412)  # Re-use existing model as decorator target
     self.assertEqual('django_tasker.models.TaskInfo.process_one',
                      t.target.name)
     o = TaskInfo.objects.last()
     o.execute()
     self.assertEqual(None, o.status_message)
     self.assertEqual(o.status, models.TaskStatus.success)
Exemplo n.º 6
0
 def test_queue_on_model_instance(self):
     stub = models.TaskQueue.objects.create()
     queueable(stub.process_batch).queue(
         1, 2, some='foo')  # Re-use existing model as decorator target
     o = TaskInfo.objects.last()
     self.assertEqual('django_tasker.models.TaskQueue.process_batch',
                      o.target.name)
     self.assertEqual(stub.pk, json.loads(o.payload)['pk'])
     self.assertEqual(
         json.dumps({
             'args': [1, 2],
             'kwargs': {
                 'some': 'foo'
             },
             "pk": 1
         }), o.payload)
     self.assertIsNotNone(o.eta)
     self.assertEqual(models.TaskStatus.queued, o.status)
Exemplo n.º 7
0
 def test_execute(self):
     queueable(models.TaskQueue.throttle).queue(1, 2, some='foo')
     o = TaskInfo.objects.first()
     with patch("django_tasker.models.TaskQueue.throttle") as method:
         o.execute()
         method.assert_called_with(1, 2, some='foo')