diff options
author | lain <lain@soykaf.club> | 2020-05-26 10:56:40 +0000 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-05-26 10:56:40 +0000 |
commit | 644195e31e500e96f60ab83ffb5f082a94c1123a (patch) | |
tree | 7f6fd50e54e641f7478c297e6e68c951d8fe65a8 /test | |
parent | c8803965af543ebd4ee1eb287e1540e25c498bf0 (diff) | |
parent | d7a57004ef975e2cf02facb9d80cff287a5d6d3b (diff) | |
download | pleroma-644195e31e500e96f60ab83ffb5f082a94c1123a.tar.gz |
Merge branch '1501-include-unlisted-posts-in-user-feed' into 'develop'
[#1501] Made user feed contain public and unlisted activities
Closes #1501
See merge request pleroma/pleroma!2584
Diffstat (limited to 'test')
-rw-r--r-- | test/web/feed/user_controller_test.exs | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/test/web/feed/user_controller_test.exs b/test/web/feed/user_controller_test.exs index 05ad427c2..fa2ed1ea5 100644 --- a/test/web/feed/user_controller_test.exs +++ b/test/web/feed/user_controller_test.exs @@ -11,13 +11,14 @@ defmodule Pleroma.Web.Feed.UserControllerTest do alias Pleroma.Config alias Pleroma.Object alias Pleroma.User + alias Pleroma.Web.CommonAPI setup do: clear_config([:instance, :federating], true) describe "feed" do setup do: clear_config([:feed]) - test "gets a feed", %{conn: conn} do + test "gets an atom feed", %{conn: conn} do Config.put( [:feed, :post_title], %{max_length: 10, omission: "..."} @@ -157,6 +158,29 @@ defmodule Pleroma.Web.Feed.UserControllerTest do assert response(conn, 404) end + + test "returns feed with public and unlisted activities", %{conn: conn} do + user = insert(:user) + + {:ok, _} = CommonAPI.post(user, %{status: "public", visibility: "public"}) + {:ok, _} = CommonAPI.post(user, %{status: "direct", visibility: "direct"}) + {:ok, _} = CommonAPI.post(user, %{status: "unlisted", visibility: "unlisted"}) + {:ok, _} = CommonAPI.post(user, %{status: "private", visibility: "private"}) + + resp = + conn + |> put_req_header("accept", "application/atom+xml") + |> get(user_feed_path(conn, :feed, user.nickname)) + |> response(200) + + activity_titles = + resp + |> SweetXml.parse() + |> SweetXml.xpath(~x"//entry/title/text()"l) + |> Enum.sort() + + assert activity_titles == ['public', 'unlisted'] + end end # Note: see ActivityPubControllerTest for JSON format tests |