summaryrefslogtreecommitdiff
path: root/tests/test_jobstores.py
diff options
context:
space:
mode:
authorAlex Grönholm <alex.gronholm@nextday.fi>2014-07-07 06:42:45 +0300
committerAlex Grönholm <alex.gronholm@nextday.fi>2014-07-07 06:42:45 +0300
commit8e8c6676239ec91729b79a34a1a6c652b89cfbd7 (patch)
tree342ccb0a7eea796c184604690d0dcc84061dadcd /tests/test_jobstores.py
parentd8f1f96ee1dfbec9389ac5f760519c6da1405e0d (diff)
downloadapscheduler-8e8c6676239ec91729b79a34a1a6c652b89cfbd7.tar.gz
Use Float instead of BigInteger in SQLAlchemyJobStore to maintain proper job order in cases where next run times differ by less than a second (fixes #63)
Diffstat (limited to 'tests/test_jobstores.py')
-rw-r--r--tests/test_jobstores.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/test_jobstores.py b/tests/test_jobstores.py
index 191d4fd..58e8533 100644
--- a/tests/test_jobstores.py
+++ b/tests/test_jobstores.py
@@ -114,6 +114,14 @@ def test_get_pending_jobs(jobstore, create_add_job, timezone):
assert jobs == []
+def test_get_pending_jobs_subsecond_difference(jobstore, create_add_job, timezone):
+ job1 = create_add_job(jobstore, dummy_job, datetime(2014, 7, 7, 0, 0, 0, 401))
+ job2 = create_add_job(jobstore, dummy_job2, datetime(2014, 7, 7, 0, 0, 0, 402))
+ job3 = create_add_job(jobstore, dummy_job3, datetime(2014, 7, 7, 0, 0, 0, 400))
+ jobs = jobstore.get_due_jobs(timezone.localize(datetime(2014, 7, 7, 1)))
+ assert jobs == [job3, job1, job2]
+
+
def test_get_next_run_time(jobstore, create_add_job, timezone):
create_add_job(jobstore, dummy_job, datetime(2016, 5, 3))
create_add_job(jobstore, dummy_job2, datetime(2014, 2, 26))