summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorLain Iwakura <lain@soykaf.club>2017-12-05 18:21:30 +0100
committerLain Iwakura <lain@soykaf.club>2017-12-05 18:21:30 +0100
commit66c3813ea6388e9933af2b15e903f1cf6254cd3a (patch)
treeb77556ae86bf102ef5976e00b63fdb41594f04a0 /test
parente7c2472abd470b3b0ba8e9321a378e5a77412e26 (diff)
downloadpleroma-66c3813ea6388e9933af2b15e903f1cf6254cd3a.tar.gz
pleroma-66c3813ea6388e9933af2b15e903f1cf6254cd3a.zip
Add basic queue prioritization.
Diffstat (limited to 'test')
-rw-r--r--test/web/federator_test.exs20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/web/federator_test.exs b/test/web/federator_test.exs
new file mode 100644
index 000000000..09533362a
--- /dev/null
+++ b/test/web/federator_test.exs
@@ -0,0 +1,20 @@
+defmodule Pleroma.Web.FederatorTest do
+ alias Pleroma.Web.Federator
+ use Pleroma.DataCase
+
+ test "enqueues an element according to priority" do
+ queue = [%{item: 1, priority: 2}]
+
+ new_queue = Federator.enqueue_sorted(queue, 2, 1)
+ assert new_queue == [%{item: 2, priority: 1}, %{item: 1, priority: 2}]
+
+ new_queue = Federator.enqueue_sorted(queue, 2, 3)
+ assert new_queue == [%{item: 1, priority: 2}, %{item: 2, priority: 3}]
+ end
+
+ test "pop first item" do
+ queue = [%{item: 2, priority: 1}, %{item: 1, priority: 2}]
+
+ assert {2, [%{item: 1, priority: 2}]} = Federator.queue_pop(queue)
+ end
+end