diff options
| author | Selwin Ong <selwin.ong@gmail.com> | 2015-03-25 08:51:30 +0700 |
|---|---|---|
| committer | Selwin Ong <selwin.ong@gmail.com> | 2015-03-25 08:51:30 +0700 |
| commit | cff6fbff41294abb001ab6502126229cbb2c6f7c (patch) | |
| tree | 06f41964d0192b332625ff9f5f21ed2c136938f8 /tests/test_job.py | |
| parent | 04b8ea481bdff6e2d8fa952c22474dc6a6c9f000 (diff) | |
| parent | 071c47dacba06f55de9d9a1569ac91592dc18eb2 (diff) | |
| download | rq-cff6fbff41294abb001ab6502126229cbb2c6f7c.tar.gz | |
Merge pull request #477 from glaslos/ttl_tests_fixes
TTL tests and fixes
Diffstat (limited to 'tests/test_job.py')
| -rw-r--r-- | tests/test_job.py | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/tests/test_job.py b/tests/test_job.py index 1a7d231..0f6ab30 100644 --- a/tests/test_job.py +++ b/tests/test_job.py @@ -4,11 +4,6 @@ from __future__ import (absolute_import, division, print_function, from datetime import datetime -from tests import RQTestCase -from tests.fixtures import (access_self, CallableObject, Number, say_hello, - some_calculation) -from tests.helpers import strip_microseconds - from rq.compat import as_text, PY2 from rq.exceptions import NoSuchJobError, UnpickleError from rq.job import get_current_job, Job @@ -16,6 +11,11 @@ from rq.queue import Queue from rq.registry import DeferredJobRegistry from rq.utils import utcformat +from tests import RQTestCase +from tests.fixtures import (access_self, CallableObject, Number, say_hello, + some_calculation, long_running_job) +from tests.helpers import strip_microseconds + try: from cPickle import loads, dumps except ImportError: @@ -334,6 +334,24 @@ class TestJob(RQTestCase): job.save() self.assertEqual(job.get_ttl(), None) + def test_ttl_via_enqueue(self): + ttl = 1 + queue = Queue(connection=self.testconn) + job = queue.enqueue(say_hello, ttl=ttl) + self.assertEqual(job.get_ttl(), ttl) + + def test_never_expire_during_execution(self): + """Test what happens when job expires during execution""" + ttl = 1 + queue = Queue(connection=self.testconn) + job = queue.enqueue(long_running_job, args=(2,), ttl=ttl) + self.assertEqual(job.get_ttl(), ttl) + job.save() + job.perform() + self.assertEqual(job.get_ttl(), -1) + self.assertTrue(job.exists(job.id)) + self.assertEqual(job.result, 'Done sleeping...') + def test_cleanup(self): """Test that jobs and results are expired properly.""" job = Job.create(func=say_hello) |
