summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTusooa Zhu <tusooa@kazv.moe>2022-06-03 21:15:17 -0400
committerTusooa Zhu <tusooa@kazv.moe>2022-06-03 21:15:17 -0400
commit8bac8147d4079c0ba0a54753bbab904e46dadbfc (patch)
treedfe06fcac3ef0a7ffe8af17a1ac07a3d6a8f01b4 /test
parentfa31ae50e6ec44a3921a60d2a6c19e864f0511e7 (diff)
downloadpleroma-8bac8147d4079c0ba0a54753bbab904e46dadbfc.tar.gz
pleroma-8bac8147d4079c0ba0a54753bbab904e46dadbfc.zip
Stream out edits
Diffstat (limited to 'test')
-rw-r--r--test/pleroma/web/streamer_test.exs33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/pleroma/web/streamer_test.exs b/test/pleroma/web/streamer_test.exs
index 4d4fed070..5ceaf763f 100644
--- a/test/pleroma/web/streamer_test.exs
+++ b/test/pleroma/web/streamer_test.exs
@@ -442,6 +442,20 @@ defmodule Pleroma.Web.StreamerTest do
"state" => "follow_accept"
} = Jason.decode!(payload)
end
+
+ test "it streams edits in the 'user' stream", %{user: user, token: oauth_token} do
+ sender = insert(:user)
+ {:ok, _, _, _} = CommonAPI.follow(user, sender)
+
+ {:ok, activity} = CommonAPI.post(sender, %{status: "hey"})
+
+ Streamer.get_topic_and_add_socket("user", user, oauth_token)
+ {:ok, edited} = CommonAPI.update(sender, activity, %{status: "mew mew"})
+ edited = Pleroma.Activity.normalize(edited)
+
+ assert_receive {:render_with_user, _, "status_update.json", ^edited}
+ refute Streamer.filtered_by_user?(user, edited)
+ end
end
describe "public streams" do
@@ -484,6 +498,25 @@ defmodule Pleroma.Web.StreamerTest do
assert_receive {:text, event}
assert %{"event" => "delete", "payload" => ^activity_id} = Jason.decode!(event)
end
+
+ test "it streams edits in the 'public' stream" do
+ sender = insert(:user)
+
+ Streamer.get_topic_and_add_socket("public", nil, nil)
+ {:ok, activity} = CommonAPI.post(sender, %{status: "hey"})
+ assert_receive {:text, _}
+
+ {:ok, edited} = CommonAPI.update(sender, activity, %{status: "mew mew"})
+
+ edited = Pleroma.Activity.normalize(edited)
+
+ %{id: activity_id} = Pleroma.Activity.get_create_by_object_ap_id(edited.object.data["id"])
+
+ assert_receive {:text, event}
+ assert %{"event" => "status.update", "payload" => payload} = Jason.decode!(event)
+ assert %{"id" => ^activity_id} = Jason.decode!(payload)
+ refute Streamer.filtered_by_user?(sender, edited)
+ end
end
describe "thread_containment/2" do