[Solved]-How to disable celery tasks while testing on django

-2👍

Usually the "good method" imply doing Mocks.
https://docs.python.org/3/library/unittest.mock.html

So you’ll return example response from the site.

You can check on class declaration debug state and if True replace the class by the corresponding Mock

8👍

You can patch the Task delay function

   patch("celery.app.task.Task.delay", return_value=1)
   patch("celery.app.task.Task.apply_async", return_value=1)

If you are using pytest, you can add this in conftest.py:

@pytest.fixture(autouse=True)
def mock_celery_delay(mocker):
    mocker.patch("celery.app.task.Task.delay", return_value=1)
    mocker.patch("celery.app.task.Task.apply_async", return_value=1)
👤jTiKey

Leave a comment