Skip to content

Commit 121a371

Browse files
Improve tests for removing from queues
1 parent 2cc92b9 commit 121a371

File tree

1 file changed

+22
-13
lines changed

1 file changed

+22
-13
lines changed

test/api_test.exs

Lines changed: 22 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -254,8 +254,10 @@ defmodule ApiTest do
254254

255255
test "remove enqueued jobs and clear their unique tokens" do
256256
{:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [], unique_for: 60, unique_token: "t1")
257-
{:ok, [job]} = Exq.Api.jobs(Exq.Api, "custom", raw: true)
258-
:ok = Exq.Api.remove_enqueued_jobs(Exq.Api, "custom", [job], clear_unique_tokens: true)
257+
{:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [])
258+
{:ok, [_j1, _j2] = raw_jobs} = Exq.Api.jobs(Exq.Api, "custom", raw: true)
259+
:ok = Exq.Api.remove_enqueued_jobs(Exq.Api, "custom", raw_jobs, clear_unique_tokens: true)
260+
assert {:ok, []} = Exq.Api.jobs(Exq.Api, "custom", raw: true)
259261
assert {:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [], unique_for: 60, unique_token: "t1")
260262
end
261263

@@ -276,10 +278,13 @@ defmodule ApiTest do
276278

277279
test "remove jobs in retry queue and clear their unique tokens" do
278280
{:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [], unique_for: 60, unique_token: "t1")
279-
{:ok, [job]} = Exq.Api.jobs(Exq.Api, "custom")
280-
JobQueue.retry_job(:testredis, 'test', job, 1, "this is an error")
281-
{:ok, [raw_job]} = Exq.Api.retries(Exq.Api, raw: true)
282-
:ok = Exq.Api.remove_retry_jobs(Exq.Api, [raw_job], clear_unique_tokens: true)
281+
{:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [])
282+
{:ok, [job1, job2]} = Exq.Api.jobs(Exq.Api, "custom")
283+
JobQueue.retry_job(:testredis, 'test', job1, 1, "this is an error")
284+
JobQueue.retry_job(:testredis, 'test', job2, 1, "this is an another error")
285+
{:ok, [_j1, _j2] = raw_jobs} = Exq.Api.retries(Exq.Api, raw: true)
286+
:ok = Exq.Api.remove_retry_jobs(Exq.Api, raw_jobs, clear_unique_tokens: true)
287+
assert {:ok, []} = Exq.Api.retries(Exq.Api, raw: true)
283288
assert {:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [], unique_for: 60, unique_token: "t1")
284289
end
285290

@@ -339,9 +344,10 @@ defmodule ApiTest do
339344

340345
test "remove scheduled jobs and clear their unique tokens" do
341346
{:ok, _} = Exq.enqueue_in(Exq, "custom", 1000, Bogus, [], unique_for: 60, unique_token: "t1")
342-
{:ok, [job]} = Exq.Api.scheduled(Exq.Api, raw: true)
343-
:ok = Exq.Api.remove_scheduled_jobs(Exq.Api, [job], clear_unique_tokens: true)
344-
{:ok, []} = Exq.Api.scheduled(Exq.Api, raw: true)
347+
{:ok, _} = Exq.enqueue_in(Exq, "custom", 1000, Bogus, [])
348+
{:ok, [_j1, _j2] = raw_jobs} = Exq.Api.scheduled(Exq.Api, raw: true)
349+
:ok = Exq.Api.remove_scheduled_jobs(Exq.Api, raw_jobs, clear_unique_tokens: true)
350+
assert {:ok, []} = Exq.Api.scheduled(Exq.Api, raw: true)
345351
assert {:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [], unique_for: 60, unique_token: "t1")
346352
end
347353

@@ -369,10 +375,13 @@ defmodule ApiTest do
369375

370376
test "remove jobs in failed queue and clear their unique tokens" do
371377
{:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [], unique_for: 60, unique_token: "t1")
372-
{:ok, [job]} = Exq.Api.jobs(Exq.Api, "custom")
373-
JobQueue.fail_job(:testredis, 'test', job, "this is an error")
374-
{:ok, [raw_job]} = Exq.Api.failed(Exq.Api, raw: true)
375-
:ok = Exq.Api.remove_failed_jobs(Exq.Api, [raw_job], clear_unique_tokens: true)
378+
{:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [])
379+
{:ok, [job1, job2]} = Exq.Api.jobs(Exq.Api, "custom")
380+
JobQueue.fail_job(:testredis, 'test', job1, "this is an error")
381+
JobQueue.fail_job(:testredis, 'test', job2, "this is an another error")
382+
{:ok, [_j1, _j2] = raw_jobs} = Exq.Api.failed(Exq.Api, raw: true)
383+
:ok = Exq.Api.remove_failed_jobs(Exq.Api, raw_jobs, clear_unique_tokens: true)
384+
assert {:ok, []} = Exq.Api.failed(Exq.Api, raw: true)
376385
assert {:ok, _} = Exq.enqueue(Exq, "custom", Bogus, [], unique_for: 60, unique_token: "t1")
377386
end
378387

0 commit comments

Comments
 (0)