add test and changelog entry
authorstwf <steven.fuchs@dockyard.com>
Thu, 17 Sep 2020 14:13:56 +0000 (10:13 -0400)
committerstwf <steven.fuchs@dockyard.com>
Thu, 17 Sep 2020 16:18:07 +0000 (12:18 -0400)
CHANGELOG.md
test/user_search_test.exs

index 6072d4cbe512c6bc7a36bf774f3f0f876638d622..5d329fd55d93132e36bc09ff5681f8fc028b4632 100644 (file)
@@ -10,8 +10,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
 - Renamed `:await_up_timeout` in `:connections_pool` namespace to `:connect_timeout`, old name is deprecated.
 - Renamed `:timeout` in `pools` namespace to `:recv_timeout`, old name is deprecated.
 - The `discoverable` field in the `User` struct will now add a NOINDEX metatag to profile pages when false.
+- Users with the `discoverable` field set to false will not show up in searches.
 - Minimum lifetime for ephmeral activities changed to 10 minutes and made configurable (`:min_lifetime` option).
-
 ### Removed
 
 - **Breaking:** `Pleroma.Workers.Cron.StatsWorker` setting from Oban `:crontab` (moved to a simpler implementation).
index 01976bf587f7385f9c9b7c971f37774b52f00d29..8529ce6dbf324e921a05b7b26b8f5e53ca26b4c0 100644 (file)
@@ -25,6 +25,14 @@ defmodule Pleroma.UserSearchTest do
       assert found_user.id == user.id
     end
 
+    test "excludes users when discoverable is false" do
+      insert(:user, %{nickname: "john 3000", discoverable: false})
+      insert(:user, %{nickname: "john 3001"})
+
+      users = User.search("john")
+      assert Enum.count(users) == 1
+    end
+
     test "excludes service actors from results" do
       insert(:user, actor_type: "Application", nickname: "user1")
       service = insert(:user, actor_type: "Service", nickname: "user2")