Skip to content

Commit fe94300

Browse files
committed
Validate the modified task when calling using
Previously, this was re-validating the existing task, rather than considering the modifications
1 parent 0593acc commit fe94300

File tree

2 files changed

+9
-16
lines changed

2 files changed

+9
-16
lines changed

django_tasks/task.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ def using(
9090
if backend is not None:
9191
task.backend = backend
9292

93-
task.get_backend().validate_task(self)
93+
task.get_backend().validate_task(task)
9494

9595
return task
9696

tests/tests/test_tasks.py

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,10 @@
2525

2626
@override_settings(
2727
TASKS={
28-
"default": {"BACKEND": "django_tasks.backends.dummy.DummyBackend"},
28+
"default": {
29+
"BACKEND": "django_tasks.backends.dummy.DummyBackend",
30+
"QUEUES": ["default", "queue_1"],
31+
},
2932
"immediate": {"BACKEND": "django_tasks.backends.immediate.ImmediateBackend"},
3033
"missing": {"BACKEND": "does.not.exist"},
3134
}
@@ -122,27 +125,17 @@ async def test_refresh_result(self) -> None:
122125

123126
self.assertEqual(dataclasses.asdict(result), original_result)
124127

125-
async def test_naive_datetime(self) -> None:
128+
def test_naive_datetime(self) -> None:
126129
with self.assertRaisesMessage(
127130
InvalidTaskError, "run_after must be an aware datetime"
128131
):
129-
test_tasks.noop_task.using(run_after=datetime.now()).enqueue()
130-
131-
with self.assertRaisesMessage(
132-
InvalidTaskError, "run_after must be an aware datetime"
133-
):
134-
await test_tasks.noop_task.using(run_after=datetime.now()).aenqueue()
135-
136-
async def test_invalid_priority(self) -> None:
137-
with self.assertRaisesMessage(
138-
InvalidTaskError, "priority must be zero or greater"
139-
):
140-
test_tasks.noop_task.using(priority=-1).enqueue()
132+
test_tasks.noop_task.using(run_after=datetime.now())
141133

134+
def test_invalid_priority(self) -> None:
142135
with self.assertRaisesMessage(
143136
InvalidTaskError, "priority must be zero or greater"
144137
):
145-
await test_tasks.noop_task.using(priority=-1).aenqueue()
138+
test_tasks.noop_task.using(priority=-1)
146139

147140
def test_call_task(self) -> None:
148141
self.assertEqual(test_tasks.calculate_meaning_of_life.call(), 42)

0 commit comments

Comments
 (0)