diff options
author | lain <lain@soykaf.club> | 2020-04-22 17:21:13 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-04-22 17:21:13 +0200 |
commit | 7a3a88a13ef526fba18bb6aeadc93f5da934dc5b (patch) | |
tree | c2d0521aab54250b1d96eb7f89cf8a402b815bbf /test | |
parent | 1cd38dfffa88384284a8ae0be39f52f25c544936 (diff) | |
download | pleroma-7a3a88a13ef526fba18bb6aeadc93f5da934dc5b.tar.gz |
Streamer: Stream boosts to the boosting user.
Diffstat (limited to 'test')
-rw-r--r-- | test/user_test.exs | 12 | ||||
-rw-r--r-- | test/web/streamer/streamer_test.exs | 36 |
2 files changed, 48 insertions, 0 deletions
diff --git a/test/user_test.exs b/test/user_test.exs index 65e118d6d..cd4041673 100644 --- a/test/user_test.exs +++ b/test/user_test.exs @@ -987,6 +987,18 @@ defmodule Pleroma.UserTest do end describe "get_recipients_from_activity" do + test "works for announces" do + actor = insert(:user) + user = insert(:user, local: true) + + {:ok, activity} = CommonAPI.post(actor, %{"status" => "hello"}) + {:ok, announce, _} = CommonAPI.repeat(activity.id, user) + + recipients = User.get_recipients_from_activity(announce) + + assert user in recipients + end + test "get recipients" do actor = insert(:user) user = insert(:user, local: true) diff --git a/test/web/streamer/streamer_test.exs b/test/web/streamer/streamer_test.exs index eb082b79f..8b8d8af6c 100644 --- a/test/web/streamer/streamer_test.exs +++ b/test/web/streamer/streamer_test.exs @@ -28,6 +28,42 @@ defmodule Pleroma.Web.StreamerTest do {:ok, %{user: user, notify: notify}} end + test "it streams the user's post in the 'user' stream", %{user: user} do + task = + Task.async(fn -> + assert_receive {:text, _}, @streamer_timeout + end) + + Streamer.add_socket( + "user", + %{transport_pid: task.pid, assigns: %{user: user}} + ) + + {:ok, activity} = CommonAPI.post(user, %{"status" => "hey"}) + + Streamer.stream("user", activity) + Task.await(task) + end + + test "it streams boosts of the user in the 'user' stream", %{user: user} do + task = + Task.async(fn -> + assert_receive {:text, _}, @streamer_timeout + end) + + Streamer.add_socket( + "user", + %{transport_pid: task.pid, assigns: %{user: user}} + ) + + other_user = insert(:user) + {:ok, activity} = CommonAPI.post(other_user, %{"status" => "hey"}) + {:ok, announce, _} = CommonAPI.repeat(activity.id, user) + + Streamer.stream("user", announce) + Task.await(task) + end + test "it sends notify to in the 'user' stream", %{user: user, notify: notify} do task = Task.async(fn -> |