Merge branch 'develop' into refactor/discoverable_user_field
authorMark Felder <feld@FreeBSD.org>
Tue, 13 Oct 2020 14:54:11 +0000 (09:54 -0500)
committerMark Felder <feld@FreeBSD.org>
Tue, 13 Oct 2020 14:54:11 +0000 (09:54 -0500)
1  2 
lib/pleroma/web/mastodon_api/controllers/account_controller.ex
lib/pleroma/web/metadata/providers/restrict_indexing.ex
test/pleroma/user_search_test.exs
test/pleroma/user_test.exs
test/pleroma/web/admin_api/search_test.exs
test/pleroma/web/mastodon_api/controllers/account_controller_test.exs
test/pleroma/web/mastodon_api/update_credentials_test.exs
test/pleroma/web/mastodon_api/views/account_view_test.exs
test/pleroma/web/metadata/providers/restrict_indexing_test.exs
test/pleroma/web/metadata_test.exs

index e06ff930772072b3a43b1c408f68310e6157fb08,4f9696d5265b65a57bb57a4f339adb9a8425652b..6453880dcbc7a53e46063050f70191c506b3ed66
@@@ -15,9 -15,6 +15,6 @@@ defmodule Pleroma.Web.MastodonAPI.Accou
      ]
  
    alias Pleroma.Maps
-   alias Pleroma.Plugs.EnsurePublicOrAuthenticatedPlug
-   alias Pleroma.Plugs.OAuthScopesPlug
-   alias Pleroma.Plugs.RateLimiter
    alias Pleroma.User
    alias Pleroma.Web.ActivityPub.ActivityPub
    alias Pleroma.Web.ActivityPub.Builder
@@@ -29,6 -26,9 +26,9 @@@
    alias Pleroma.Web.MastodonAPI.StatusView
    alias Pleroma.Web.OAuth.OAuthController
    alias Pleroma.Web.OAuth.OAuthView
+   alias Pleroma.Web.Plugs.EnsurePublicOrAuthenticatedPlug
+   alias Pleroma.Web.Plugs.OAuthScopesPlug
+   alias Pleroma.Web.Plugs.RateLimiter
    alias Pleroma.Web.TwitterAPI.TwitterAPI
  
    plug(Pleroma.Web.ApiSpec.CastAndValidate)
          :show_role,
          :skip_thread_containment,
          :allow_following_move,
 -        :discoverable,
 +        :is_discoverable,
          :accepts_chat_messages
        ]
        |> Enum.reduce(%{}, fn key, acc ->
index 900c2434de216363fb9243a91a654d9f7619983d,a1dcb6e15145ea0da013a139a8723a6bb580c51a..900c2434de216363fb9243a91a654d9f7619983d
@@@ -10,7 -10,7 +10,7 @@@ defmodule Pleroma.Web.Metadata.Provider
    """
  
    @impl true
 -  def build_tags(%{user: %{local: true, discoverable: true}}), do: []
 +  def build_tags(%{user: %{local: true, is_discoverable: true}}), do: []
  
    def build_tags(_) do
      [
index 31d787ffa0ed35e2ef817c99956a2ee1d5241e7d,c4b8050055b04c167ed4e0afeacd65c1f40feb67..31d787ffa0ed35e2ef817c99956a2ee1d5241e7d
@@@ -66,7 -66,7 +66,7 @@@ defmodule Pleroma.UserSearchTest d
      end
  
      test "excludes users when discoverable is false" do
 -      insert(:user, %{nickname: "john 3000", discoverable: false})
 +      insert(:user, %{nickname: "john 3000", is_discoverable: false})
        insert(:user, %{nickname: "john 3001"})
  
        users = User.search("john")
index 7d7bf4b78ad35b46d8ae4c22dfa235ea6c3831a5,d506f704708a6c7f501bf51db735b8f5cd301b21..7d7bf4b78ad35b46d8ae4c22dfa235ea6c3831a5
@@@ -1467,7 -1467,7 +1467,7 @@@ defmodule Pleroma.UserTest d
          pleroma_settings_store: %{"q" => "x"},
          fields: [%{"gg" => "qq"}],
          raw_fields: [%{"gg" => "qq"}],
 -        discoverable: true,
 +        is_discoverable: true,
          also_known_as: ["https://lol.olo/users/loll"]
        })
  
               pleroma_settings_store: %{},
               fields: [],
               raw_fields: [],
 -             discoverable: false,
 +             is_discoverable: false,
               also_known_as: []
             } = user
    end
index ceec64f1e73ec81c78015f5bbe41d5d38ffd90a3,d88867c5272e0242b0978d809999dcc6c2df191d..ceec64f1e73ec81c78015f5bbe41d5d38ffd90a3
@@@ -180,7 -180,7 +180,7 @@@ defmodule Pleroma.Web.AdminAPI.SearchTe
  
      test "it returns non-discoverable users" do
        insert(:user)
 -      insert(:user, discoverable: false)
 +      insert(:user, is_discoverable: false)
  
        {:ok, _results, total} = Search.user()
  
index f7eb97dbb515bf9d9e62e02cf5a55062958ccab3,f7f1369e48e35d70a19d925a2a3c2d2f66a05b00..f7eb97dbb515bf9d9e62e02cf5a55062958ccab3
@@@ -1278,7 -1278,7 +1278,7 @@@ defmodule Pleroma.Web.MastodonAPI.Accou
                   "note" => "",
                   "pleroma" => %{
                     "actor_type" => "Person",
 -                   "discoverable" => false,
 +                   "is_discoverable" => false,
                     "no_rich_text" => false,
                     "show_role" => true
                   },
index d31cc27cc88344cfa5cac26836d6fed7ac377b3b,fe462caa38c07739e182c264093c2ab774280c51..383d351cf02704799c1c6f6292f557c1730fa36a
@@@ -2,7 -2,7 +2,7 @@@
  # Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
  # SPDX-License-Identifier: AGPL-3.0-only
  
- defmodule Pleroma.Web.MastodonAPI.MastodonAPIController.UpdateCredentialsTest do
+ defmodule Pleroma.Web.MastodonAPI.UpdateCredentialsTest do
    alias Pleroma.Repo
    alias Pleroma.User
  
      end
  
      test "updates the user's discoverable status", %{conn: conn} do
 -      assert %{"source" => %{"pleroma" => %{"discoverable" => true}}} =
 +      assert %{"source" => %{"pleroma" => %{"is_discoverable" => true}}} =
                 conn
 -               |> patch("/api/v1/accounts/update_credentials", %{discoverable: "true"})
 +               |> patch("/api/v1/accounts/update_credentials", %{is_discoverable: "true"})
                 |> json_response_and_validate_schema(:ok)
  
 -      assert %{"source" => %{"pleroma" => %{"discoverable" => false}}} =
 +      assert %{"source" => %{"pleroma" => %{"is_discoverable" => false}}} =
                 conn
 -               |> patch("/api/v1/accounts/update_credentials", %{discoverable: "false"})
 +               |> patch("/api/v1/accounts/update_credentials", %{is_discoverable: "false"})
                 |> json_response_and_validate_schema(:ok)
      end
  
index 3b0454df24cb73d033e1b7a31e1048aecd05666b,a5f39b215dd6e5ad92ba2962b49506ed21abaa60..3b0454df24cb73d033e1b7a31e1048aecd05666b
@@@ -69,7 -69,7 +69,7 @@@ defmodule Pleroma.Web.MastodonAPI.Accou
          sensitive: false,
          pleroma: %{
            actor_type: "Person",
 -          discoverable: true
 +          is_discoverable: true
          },
          fields: []
        },
          sensitive: false,
          pleroma: %{
            actor_type: "Service",
 -          discoverable: true
 +          is_discoverable: true
          },
          fields: []
        },
index 282d132c8104a672f52087fb52316d24c91de170,6b3a653724dcca51d29815b560a1afcc7388b1eb..282d132c8104a672f52087fb52316d24c91de170
@@@ -14,13 -14,13 +14,13 @@@ defmodule Pleroma.Web.Metadata.Provider
  
      test "for local user" do
        assert Pleroma.Web.Metadata.Providers.RestrictIndexing.build_tags(%{
 -               user: %Pleroma.User{local: true, discoverable: true}
 +               user: %Pleroma.User{local: true, is_discoverable: true}
               }) == []
      end
  
      test "for local user when discoverable is false" do
        assert Pleroma.Web.Metadata.Providers.RestrictIndexing.build_tags(%{
 -               user: %Pleroma.User{local: true, discoverable: false}
 +               user: %Pleroma.User{local: true, is_discoverable: false}
               }) == [{:meta, [name: "robots", content: "noindex, noarchive"], []}]
      end
    end
index 8fb946540d92a8774e9abe14fcd43255350e3e1f,ca6cbe67faa875c7cf69da661884d4808cdd90b4..8fb946540d92a8774e9abe14fcd43255350e3e1f
@@@ -16,14 -16,14 +16,14 @@@ defmodule Pleroma.Web.MetadataTest d
      end
  
      test "for local user" do
 -      user = insert(:user, discoverable: false)
 +      user = insert(:user, is_discoverable: false)
  
        assert Pleroma.Web.Metadata.build_tags(%{user: user}) =~
                 "<meta content=\"noindex, noarchive\" name=\"robots\">"
      end
  
      test "for local user set to discoverable" do
 -      user = insert(:user, discoverable: true)
 +      user = insert(:user, is_discoverable: true)
  
        refute Pleroma.Web.Metadata.build_tags(%{user: user}) =~
                 "<meta content=\"noindex, noarchive\" name=\"robots\">"
    describe "no metadata for private instances" do
      test "for local user set to discoverable" do
        clear_config([:instance, :public], false)
 -      user = insert(:user, bio: "This is my secret fedi account bio", discoverable: true)
 +      user = insert(:user, bio: "This is my secret fedi account bio", is_discoverable: true)
  
        assert "" = Pleroma.Web.Metadata.build_tags(%{user: user})
      end
  
      test "search exclusion metadata is included" do
        clear_config([:instance, :public], false)
 -      user = insert(:user, bio: "This is my secret fedi account bio", discoverable: false)
 +      user = insert(:user, bio: "This is my secret fedi account bio", is_discoverable: false)
  
        assert ~s(<meta content="noindex, noarchive" name="robots">) ==
                 Pleroma.Web.Metadata.build_tags(%{user: user})