diff options
Diffstat (limited to 'test/web')
| -rw-r--r-- | test/web/activity_pub/activity_pub_test.exs | 10 | ||||
| -rw-r--r-- | test/web/mastodon_api/mastodon_api_controller_test.exs | 20 | ||||
| -rw-r--r-- | test/web/twitter_api/twitter_api_controller_test.exs | 28 | 
3 files changed, 58 insertions, 0 deletions
| diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index 4f6b7f058..f7c66038d 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -180,6 +180,16 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do      assert Enum.member?(activities, activity_one)    end +  test "excludes reblogs on request" do +    user = insert(:user) +    {:ok, expected_activity} = ActivityBuilder.insert(%{"type" => "Create"}, %{:user => user}) +    {:ok, _} = ActivityBuilder.insert(%{"type" => "Announce"}, %{:user => user}) + +    [activity] = ActivityPub.fetch_user_activities(user, nil, %{"exclude_reblogs" => "true"}) + +    assert activity == expected_activity +  end +    describe "public fetch activities" do      test "doesn't retrieve unlisted activities" do        user = insert(:user) diff --git a/test/web/mastodon_api/mastodon_api_controller_test.exs b/test/web/mastodon_api/mastodon_api_controller_test.exs index 433c135f7..1737a5ebe 100644 --- a/test/web/mastodon_api/mastodon_api_controller_test.exs +++ b/test/web/mastodon_api/mastodon_api_controller_test.exs @@ -840,6 +840,26 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIControllerTest do        assert [%{"id" => id}] = json_response(conn, 200)        assert id == to_string(image_post.id)      end + +    test "gets a user's statuses without reblogs", %{conn: conn} do +      user = insert(:user) +      {:ok, post} = CommonAPI.post(user, %{"status" => "HI!!!"}) +      {:ok, _, _} = CommonAPI.repeat(post.id, user) + +      conn = +        conn +        |> get("/api/v1/accounts/#{user.id}/statuses", %{"exclude_reblogs" => "true"}) + +      assert [%{"id" => id}] = json_response(conn, 200) +      assert id == to_string(post.id) + +      conn = +        conn +        |> get("/api/v1/accounts/#{user.id}/statuses", %{"exclude_reblogs" => "1"}) + +      assert [%{"id" => id}] = json_response(conn, 200) +      assert id == to_string(post.id) +    end    end    describe "user relationships" do diff --git a/test/web/twitter_api/twitter_api_controller_test.exs b/test/web/twitter_api/twitter_api_controller_test.exs index 0e656f9ca..474d72df6 100644 --- a/test/web/twitter_api/twitter_api_controller_test.exs +++ b/test/web/twitter_api/twitter_api_controller_test.exs @@ -519,6 +519,34 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        assert length(response) == 1        assert Enum.at(response, 0) == ActivityRepresenter.to_map(activity, %{user: user})      end + +    test "with credentials with user_id, excluding RTs", %{conn: conn, user: current_user} do +      user = insert(:user) +      {:ok, activity} = ActivityBuilder.insert(%{"id" => 1, "type" => "Create"}, %{user: user}) +      {:ok, _} = ActivityBuilder.insert(%{"id" => 2, "type" => "Announce"}, %{user: user}) + +      conn = +        conn +        |> with_credentials(current_user.nickname, "test") +        |> get("/api/statuses/user_timeline.json", %{ +          "user_id" => user.id, +          "include_rts" => "false" +        }) + +      response = json_response(conn, 200) + +      assert length(response) == 1 +      assert Enum.at(response, 0) == ActivityRepresenter.to_map(activity, %{user: user}) + +      conn = +        conn +        |> get("/api/statuses/user_timeline.json", %{"user_id" => user.id, "include_rts" => "0"}) + +      response = json_response(conn, 200) + +      assert length(response) == 1 +      assert Enum.at(response, 0) == ActivityRepresenter.to_map(activity, %{user: user}) +    end    end    describe "POST /friendships/create.json" do | 
