test_decorators.py 1012 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. from __future__ import absolute_import
  2. import warnings
  3. from celery.task import base
  4. from celery.tests.case import Case
  5. def add(x, y):
  6. return x + y
  7. class test_decorators(Case):
  8. def test_task_alias(self):
  9. from celery import task
  10. self.assertTrue(task.__file__)
  11. self.assertTrue(task(add))
  12. def setUp(self):
  13. with warnings.catch_warnings(record=True):
  14. from celery import decorators
  15. self.decorators = decorators
  16. def assertCompatDecorator(self, decorator, type, **opts):
  17. task = decorator(**opts)(add)
  18. self.assertEqual(task(8, 8), 16)
  19. self.assertTrue(task.accept_magic_kwargs)
  20. self.assertIsInstance(task, type)
  21. def test_task(self):
  22. self.assertCompatDecorator(self.decorators.task, base.BaseTask)
  23. def test_periodic_task(self):
  24. self.assertCompatDecorator(self.decorators.periodic_task,
  25. base.BaseTask,
  26. run_every=1)