diff --git a/rq/job.py b/rq/job.py index d083185..b45ed28 100644 --- a/rq/job.py +++ b/rq/job.py @@ -481,6 +481,7 @@ class Job(object): self.cancel() connection = pipeline if pipeline is not None else self.connection connection.delete(self.key) + connection.delete(self.dependents_key) # Job execution def perform(self): # noqa @@ -535,7 +536,7 @@ class Job(object): forever) """ if ttl == 0: - self.cancel() + self.delete() elif not ttl: return elif ttl > 0: diff --git a/tests/test_job.py b/tests/test_job.py index 4a57e6e..fd714f1 100644 --- a/tests/test_job.py +++ b/tests/test_job.py @@ -378,13 +378,13 @@ class TestJob(RQTestCase): self.assertEqual(as_text(self.testconn.spop('rq:job:id:dependents')), job.id) self.assertEqual(registry.get_job_ids(), [job.id]) - def test_cancel(self): - """job.cancel() deletes itself & dependents mapping from Redis.""" + def test_delete(self): + """job.delete() deletes itself & dependents mapping from Redis.""" queue = Queue(connection=self.testconn) job = queue.enqueue(fixtures.say_hello) job2 = Job.create(func=fixtures.say_hello, depends_on=job) job2.register_dependency() - job.cancel() + job.delete() self.assertFalse(self.testconn.exists(job.key)) self.assertFalse(self.testconn.exists(job.dependents_key)) diff --git a/tests/test_queue.py b/tests/test_queue.py index 5d87ddf..f764849 100644 --- a/tests/test_queue.py +++ b/tests/test_queue.py @@ -88,10 +88,8 @@ class TestQueue(RQTestCase): job = q.enqueue(say_hello) self.assertEqual(q.jobs, [job]) - # Fetching a deleted removes it from queue + # Deleting job removes it from queue job.delete() - self.assertEqual(q.job_ids, [job.id]) - q.jobs self.assertEqual(q.job_ids, []) def test_compact(self):