diff --git a/lib/pleroma/web/api_spec/operations/account_operation.ex b/lib/pleroma/web/api_spec/operations/account_operation.ex index 599df03ea..96c16d802 100644 --- a/lib/pleroma/web/api_spec/operations/account_operation.ex +++ b/lib/pleroma/web/api_spec/operations/account_operation.ex @@ -772,7 +772,7 @@ defp array_of_relationships do "showing_reblogs" => true, "followed_by" => true, "blocking" => false, - "blocked_by" => false, + "blocked_by" => true, "muting" => false, "muting_notifications" => false, "note" => "", @@ -788,7 +788,7 @@ defp array_of_relationships do "showing_reblogs" => true, "followed_by" => true, "blocking" => false, - "blocked_by" => false, + "blocked_by" => true, "muting" => true, "muting_notifications" => false, "note" => "", diff --git a/lib/pleroma/web/api_spec/schemas/account_relationship.ex b/lib/pleroma/web/api_spec/schemas/account_relationship.ex index 58751b261..5d9e3b56e 100644 --- a/lib/pleroma/web/api_spec/schemas/account_relationship.ex +++ b/lib/pleroma/web/api_spec/schemas/account_relationship.ex @@ -13,10 +13,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.AccountRelationship do description: "Relationship between current account and requested account", type: :object, properties: %{ - blocked_by: %Schema{ - type: :boolean, - description: "Represents being blocked by this user. Always false." - }, + blocked_by: %Schema{type: :boolean}, blocking: %Schema{type: :boolean}, domain_blocking: %Schema{type: :boolean}, endorsed: %Schema{type: :boolean}, diff --git a/lib/pleroma/web/mastodon_api/views/account_view.ex b/lib/pleroma/web/mastodon_api/views/account_view.ex index 7a29dbf8e..d17131350 100644 --- a/lib/pleroma/web/mastodon_api/views/account_view.ex +++ b/lib/pleroma/web/mastodon_api/views/account_view.ex @@ -124,7 +124,14 @@ def render( target, &User.blocks_user?(&1, &2) ), - blocked_by: false, + blocked_by: + UserRelationship.exists?( + user_relationships, + :block, + target, + reading_user, + &User.blocks_user?(&1, &2) + ), muting: UserRelationship.exists?( user_relationships, diff --git a/test/pleroma/web/mastodon_api/views/account_view_test.exs b/test/pleroma/web/mastodon_api/views/account_view_test.exs index 4c7438f4e..df01c5231 100644 --- a/test/pleroma/web/mastodon_api/views/account_view_test.exs +++ b/test/pleroma/web/mastodon_api/views/account_view_test.exs @@ -399,22 +399,7 @@ test "represent a relationship for the blocking and blocked user" do expected = Map.merge( @blank_response, - %{following: false, blocking: true, blocked_by: false, id: to_string(other_user.id)} - ) - - test_relationship_rendering(user, other_user, expected) - end - - test "blocks are not visible to the blocked user" do - user = insert(:user) - other_user = insert(:user) - - {:ok, _user_relationship} = User.block(other_user, user) - - expected = - Map.merge( - @blank_response, - %{following: false, blocking: false, blocked_by: false, id: to_string(other_user.id)} + %{following: false, blocking: true, blocked_by: true, id: to_string(other_user.id)} ) test_relationship_rendering(user, other_user, expected)