diff options
Diffstat (limited to 'test/web')
| -rw-r--r-- | test/web/common_api/common_api_test.exs | 26 | ||||
| -rw-r--r-- | test/web/mastodon_api/mastodon_api_controller_test.exs | 32 | 
2 files changed, 58 insertions, 0 deletions
| diff --git a/test/web/common_api/common_api_test.exs b/test/web/common_api/common_api_test.exs index a7d9e6161..d26b6e49c 100644 --- a/test/web/common_api/common_api_test.exs +++ b/test/web/common_api/common_api_test.exs @@ -164,4 +164,30 @@ defmodule Pleroma.Web.CommonAPI.Test do        assert %User{info: %{pinned_activities: []}} = user      end    end + +  describe "mute tests" do +    setup do +      user = insert(:user) + +      activity = insert(:note_activity) + +      [user: user, activity: activity] +    end + +    test "add mute", %{user: user, activity: activity} do +      {:ok, _} = CommonAPI.add_mute(user, activity) +      assert CommonAPI.thread_muted?(user, activity) +    end + +    test "remove mute", %{user: user, activity: activity} do +      CommonAPI.add_mute(user, activity) +      {:ok, _} = CommonAPI.remove_mute(user, activity) +      refute CommonAPI.thread_muted?(user, activity) +    end + +    test "check that mutes can't be duplicate", %{user: user, activity: activity} do +      CommonAPI.add_mute(user, activity) +      {:error, _} = CommonAPI.add_mute(user, activity) +    end +  end  end diff --git a/test/web/mastodon_api/mastodon_api_controller_test.exs b/test/web/mastodon_api/mastodon_api_controller_test.exs index f8da86004..1a60ad8e6 100644 --- a/test/web/mastodon_api/mastodon_api_controller_test.exs +++ b/test/web/mastodon_api/mastodon_api_controller_test.exs @@ -1749,4 +1749,36 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIControllerTest do      assert [json_response(response2, 200)] == json_response(bookmarks, 200)    end + +  describe "conversation muting" do +    setup do +      user = insert(:user) +      {:ok, activity} = CommonAPI.post(user, %{"status" => "HIE"}) + +      [user: user, activity: activity] +    end + +    test "mute conversation", %{conn: conn, user: user, activity: activity} do +      id_str = to_string(activity.id) + +      assert %{"id" => ^id_str, "muted" => true} = +               conn +               |> assign(:user, user) +               |> post("/api/v1/statuses/#{activity.id}/mute") +               |> json_response(200) +    end + +    test "unmute conversation", %{conn: conn, user: user, activity: activity} do +      {:ok, _} = CommonAPI.add_mute(user, activity) + +      id_str = to_string(activity.id) +      user = refresh_record(user) + +      assert %{"id" => ^id_str, "muted" => false} = +               conn +               |> assign(:user, user) +               |> post("/api/v1/statuses/#{activity.id}/unmute") +               |> json_response(200) +    end +  end  end | 
