diff --git a/django_q/tasks.py b/django_q/tasks.py index 20e8af3..ab22053 100644 --- a/django_q/tasks.py +++ b/django_q/tasks.py @@ -281,10 +281,16 @@ def delete_group(group_id, tasks=False, cached=Conf.CACHED): def delete_group_cached(group_id, broker=None): + if not broker: + broker = get_broker() + return delete_cached(group_id, broker) + + +def delete_cached(task_id, broker=None): if not broker: broker = get_broker() key = 'django_q:{}:results'.format(broker.list_key) - return broker.cache.delete('{}:{}'.format(key, group_id)) + return broker.cache.delete('{}:{}'.format(key, task_id)) def queue_size(broker=None): diff --git a/django_q/tests/test_cached.py b/django_q/tests/test_cached.py index cfc0934..9a9f879 100644 --- a/django_q/tests/test_cached.py +++ b/django_q/tests/test_cached.py @@ -4,7 +4,7 @@ import pytest from django_q.cluster import Sentinel from django_q.conf import Conf -from django_q.tasks import async, result, fetch, count_group, result_group, fetch_group, delete_group +from django_q.tasks import async, result, fetch, count_group, result_group, fetch_group, delete_group, delete_cached from django_q.brokers import get_broker @@ -54,4 +54,7 @@ def test_cached(broker): assert len(fetch_group(group, cached=True, failures=False)) == 5 delete_group(group, cached=True) assert count_group(group, cached=True) is None + delete_cached(task_id) + assert result(task_id, cached=True) is None + assert fetch(task_id, cached=True) is None broker.cache.clear()