diff options
author | lambda <pleromagit@rogerbraun.net> | 2018-11-16 18:13:47 +0000 |
---|---|---|
committer | lambda <pleromagit@rogerbraun.net> | 2018-11-16 18:13:47 +0000 |
commit | 2f639ea1292b1dee01b10fc78bbbe253a4592f2d (patch) | |
tree | 826a84d81ea2b1ece77eeae72f52615da59bf162 /test | |
parent | 38f76d964f62f03f01abc8beeeddaac97a91d751 (diff) | |
parent | e8d8c84f795152a0522e6848e75b47dcbce5aa89 (diff) | |
download | pleroma-2f639ea1292b1dee01b10fc78bbbe253a4592f2d.tar.gz pleroma-2f639ea1292b1dee01b10fc78bbbe253a4592f2d.zip |
Merge branch 'feature/pleromafe-usersearch' into 'develop'
Add Twitter / Pleroma API user search
See merge request pleroma/pleroma!452
Diffstat (limited to 'test')
-rw-r--r-- | test/user_test.exs | 12 | ||||
-rw-r--r-- | test/web/twitter_api/twitter_api_controller_test.exs | 16 |
2 files changed, 28 insertions, 0 deletions
diff --git a/test/user_test.exs b/test/user_test.exs index 7dec3462f..231f1d94d 100644 --- a/test/user_test.exs +++ b/test/user_test.exs @@ -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 diff --git a/test/web/twitter_api/twitter_api_controller_test.exs b/test/web/twitter_api/twitter_api_controller_test.exs index 788e3a6eb..1d45d9437 100644 --- a/test/web/twitter_api/twitter_api_controller_test.exs +++ b/test/web/twitter_api/twitter_api_controller_test.exs @@ -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 |