summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorkaniini <ariadne@dereferenced.org>2019-08-18 21:57:55 +0000
committerkaniini <ariadne@dereferenced.org>2019-08-18 21:57:55 +0000
commit18c8c8d1761e49b442ceef425f5de44166266d4e (patch)
tree3345b0cdc554116f6575673b794f46ae8f65396b /test
parent7ab2dbbdb60e08a6b142e62b2f50561427715bd4 (diff)
parenta4a3e3becd5e008dbfa9a23157ae4b16a0652bce (diff)
downloadpleroma-18c8c8d1761e49b442ceef425f5de44166266d4e.tar.gz
pleroma-18c8c8d1761e49b442ceef425f5de44166266d4e.zip
Merge branch 'feature/hide-muted-threads-from-timeline' into 'develop'
Hide muted theads from home/public timelines unless `with_muted` is set See merge request pleroma/pleroma!1575
Diffstat (limited to 'test')
-rw-r--r--test/web/activity_pub/activity_pub_test.exs23
-rw-r--r--test/web/streamer_test.exs20
2 files changed, 43 insertions, 0 deletions
diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs
index d723f331f..0377d29f6 100644
--- a/test/web/activity_pub/activity_pub_test.exs
+++ b/test/web/activity_pub/activity_pub_test.exs
@@ -538,6 +538,29 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do
assert Enum.member?(activities, activity_one)
end
+ test "doesn't return thread muted activities" do
+ user = insert(:user)
+ activity_one = insert(:note_activity)
+ note_two = insert(:note, data: %{"context" => "suya.."})
+ activity_two = insert(:note_activity, note: note_two)
+
+ {:ok, _activity_two} = CommonAPI.add_mute(user, activity_two)
+
+ assert [activity_one] = ActivityPub.fetch_activities([], %{"muting_user" => user})
+ end
+
+ test "returns thread muted activities when with_muted is set" do
+ user = insert(:user)
+ activity_one = insert(:note_activity)
+ note_two = insert(:note, data: %{"context" => "suya.."})
+ activity_two = insert(:note_activity, note: note_two)
+
+ {:ok, activity_two} = CommonAPI.add_mute(user, activity_two)
+
+ assert [activity_two, activity_one] =
+ ActivityPub.fetch_activities([], %{"muting_user" => user, "with_muted" => true})
+ end
+
test "does include announces on request" do
activity_three = insert(:note_activity)
user = insert(:user)
diff --git a/test/web/streamer_test.exs b/test/web/streamer_test.exs
index d47b37efb..5b7fe44d4 100644
--- a/test/web/streamer_test.exs
+++ b/test/web/streamer_test.exs
@@ -414,6 +414,26 @@ defmodule Pleroma.Web.StreamerTest do
Task.await(task)
end
+ test "it doesn't send posts from muted threads" do
+ user = insert(:user)
+ user2 = insert(:user)
+ {:ok, user2, user, _activity} = CommonAPI.follow(user2, user)
+
+ {:ok, activity} = CommonAPI.post(user, %{"status" => "super hot take"})
+
+ {:ok, activity} = CommonAPI.add_mute(user2, activity)
+
+ task = Task.async(fn -> refute_receive {:text, _}, 4_000 end)
+
+ Streamer.add_socket(
+ "user",
+ %{transport_pid: task.pid, assigns: %{user: user2}}
+ )
+
+ Streamer.stream("user", activity)
+ Task.await(task)
+ end
+
describe "direct streams" do
setup do
GenServer.start(Streamer, %{}, name: Streamer)