MCPcopy
hub / github.com/celery/celery / test_regular_task

Method test_regular_task

t/unit/tasks/test_tasks.py:1022–1149  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1020 self.increment_counter.apply_async('s', {})
1021
1022 def test_regular_task(self):
1023 assert isinstance(self.mytask, Task)
1024 assert self.mytask.run()
1025 assert callable(self.mytask)
1026 assert self.mytask(), 'Task class runs run() when called'
1027
1028 with self.app.connection_or_acquire() as conn:
1029 consumer = self.app.amqp.TaskConsumer(conn)
1030 with pytest.raises(NotImplementedError):
1031 consumer.receive('foo', 'foo')
1032 consumer.purge()
1033 assert consumer.queues[0].get() is None
1034 self.app.amqp.TaskConsumer(conn, queues=[Queue('foo')])
1035
1036 # Without arguments.
1037 presult = self.mytask.delay()
1038 self.assert_next_task_data_equal(
1039 consumer, presult, self.mytask.name)
1040
1041 # With arguments.
1042 presult2 = self.mytask.apply_async(
1043 kwargs={'name': 'George Costanza'},
1044 )
1045 self.assert_next_task_data_equal(
1046 consumer, presult2, self.mytask.name, name='George Costanza',
1047 )
1048
1049 # send_task
1050 sresult = self.app.send_task(self.mytask.name,
1051 kwargs={'name': 'Elaine M. Benes'})
1052 self.assert_next_task_data_equal(
1053 consumer, sresult, self.mytask.name, name='Elaine M. Benes',
1054 )
1055
1056 # With ETA, absolute expires.
1057 presult2 = self.mytask.apply_async(
1058 kwargs={'name': 'George Costanza'},
1059 eta=self.now() + timedelta(days=1),
1060 expires=self.now() + timedelta(days=2),
1061 )
1062 self.assert_next_task_data_equal(
1063 consumer, presult2, self.mytask.name,
1064 name='George Costanza', test_eta=True, test_expires=True,
1065 )
1066
1067 # With ETA, absolute expires without timezone.
1068 presult2 = self.mytask.apply_async(
1069 kwargs={'name': 'George Constanza'},
1070 eta=self.now() + timedelta(days=1),
1071 expires=(self.now() + timedelta(hours=2)).replace(tzinfo=None),
1072 )
1073 self.assert_next_task_data_equal(
1074 consumer, presult2, self.mytask.name,
1075 name='George Constanza', test_eta=True, test_expires=True,
1076 )
1077
1078 # With ETA, absolute expires in the past.
1079 presult2 = self.mytask.apply_async(

Callers

nothing calls this directly

Calls 15

nowMethod · 0.95
QueueClass · 0.85
connection_or_acquireMethod · 0.80
TaskConsumerMethod · 0.80
mark_as_doneMethod · 0.80
runMethod · 0.45
mytaskMethod · 0.45
raisesMethod · 0.45
purgeMethod · 0.45
getMethod · 0.45
delayMethod · 0.45

Tested by

no test coverage detected