Skip to main content

celery-mock allows you to mock celery task and run them when you want

Project description

https://img.shields.io/pypi/v/celery-mock.svg https://img.shields.io/travis/ulamlabs/celery-mock.svg https://codecov.io/gh/ulamlabs/celery-mock/branch/master/graph/badge.svg

celery-mock allows you to mock celery task and then run them when you want

Rationale

Sometimes a celery task retries itself to wait for some event or model to change. This is hard to test because celery tasks run (and retry) inline in tests. Now you can choose when to run your tasks.

Supported versions

  • Python 3 support

  • Celery 3.1.x and 4.0.x support

How to install

pip install celery-mock

How to use

from celery_mock import task_mock
from django.test import TestCase, Client

from myapp import dummyview

class UsersTestCase(TestCase):

    def test_create_user(self):
        client = Client()
        client.post('/api/users/', data={'username': 'konrad')  # runs tasks inline

        with task_mock():
            client.post('/api/users/', data={'username': 'konrad')
            # no tasks started yet
        # all tasks ran here

        with task_mock('myapp.post_user_create_task'):
            client.post('/api/users/', data={'username': 'konrad')
            # all tasks started execept myapp.post_user_create_task
        # myapp.post_user_create_task started here

        # you can use task_mock manually:

        tmock = task_mock().start()
        client.post('/api/users/', data={'username': 'konrad')
        # no tasks started yet
        tomock.stop()  # all tasks ran here

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

celery-mock-1.1.5.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

celery_mock-1.1.5-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file celery-mock-1.1.5.tar.gz.

File metadata

  • Download URL: celery-mock-1.1.5.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.2 CPython/3.8.5 Darwin/19.6.0

File hashes

Hashes for celery-mock-1.1.5.tar.gz
Algorithm Hash digest
SHA256 59aaf0bd2d745d9b09dc56f12d7c505c1af3a89b33bc1cc2ece1691c1d1a7b4e
MD5 493ea969fbe905be0ffd30a704e64ff3
BLAKE2b-256 bac754036ca346e3e8a00053a212cdb0c3733f02148e5d6058f1fcb190b5a547

See more details on using hashes here.

File details

Details for the file celery_mock-1.1.5-py3-none-any.whl.

File metadata

  • Download URL: celery_mock-1.1.5-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.2 CPython/3.8.5 Darwin/19.6.0

File hashes

Hashes for celery_mock-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 fa1d3f7f1f23cc0f19b3c1e15c0c25b3637ced43198c15c9b09df56de5174944
MD5 de6abc726a6e6c6b7dd2fb2ba887a679
BLAKE2b-256 ccd87b07c8edfc9ee8ce1dc85be966e88d4c71eef5c1bd563e693e2a8061bbfb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page