Merge branch 'feature/pleromafe-usersearch' into 'develop'

Add Twitter / Pleroma API user search

See merge request pleroma/pleroma!452
This commit is contained in:
lambda 2018-11-16 18:13:47 +00:00
commit 2f639ea129
5 changed files with 42 additions and 2 deletions

View file

@ -578,4 +578,16 @@ defmodule Pleroma.UserTest do
assert cached_user != user
end
end
describe "User.search" do
test "finds a user, ranking by similarity" do
user = insert(:user, %{name: "lain"})
user_two = insert(:user, %{name: "ean"})
user_three = insert(:user, %{name: "ebn", nickname: "lain@mastodon.social"})
user_four = insert(:user, %{nickname: "lain@pleroma.soykaf.com"})
assert user_four ==
User.search("lain@ple") |> List.first() |> Map.put(:search_distance, nil)
end
end
end

View file

@ -1211,4 +1211,20 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do
assert relationship["follows_you"] == false
end
end
describe "GET /api/pleroma/search_user" do
test "it returns users, ordered by similarity", %{conn: conn} do
user = insert(:user, %{name: "eal"})
user_two = insert(:user, %{name: "ean"})
user_three = insert(:user, %{name: "ebn"})
resp =
conn
|> get(twitter_api_search__path(conn, :search_user), query: "eal")
|> json_response(200)
assert length(resp) == 3
assert [user.id, user_two.id, user_three.id] == Enum.map(resp, fn %{"id" => id} -> id end)
end
end
end