MastoAPI: Profile directory
This commit is contained in:
parent
73609211a4
commit
de006443f0
16 changed files with 226 additions and 7 deletions
|
|
@ -0,0 +1,46 @@
|
|||
defmodule Pleroma.Web.MastodonAPI.DirectoryControllerTest do
|
||||
use Pleroma.Web.ConnCase, async: true
|
||||
alias Pleroma.Web.CommonAPI
|
||||
import Pleroma.Factory
|
||||
|
||||
test "GET /api/v1/directory with :profile_directory disabled returns empty array", %{conn: conn} do
|
||||
clear_config([:instance, :profile_directory], false)
|
||||
|
||||
insert(:user, is_discoverable: true)
|
||||
insert(:user, is_discoverable: true)
|
||||
|
||||
result =
|
||||
conn
|
||||
|> get("/api/v1/directory")
|
||||
|> json_response_and_validate_schema(200)
|
||||
|
||||
assert result == []
|
||||
end
|
||||
|
||||
test "GET /api/v1/directory returns discoverable users only", %{conn: conn} do
|
||||
%{id: user_id} = insert(:user, is_discoverable: true)
|
||||
insert(:user, is_discoverable: false)
|
||||
|
||||
result =
|
||||
conn
|
||||
|> get("/api/v1/directory")
|
||||
|> json_response_and_validate_schema(200)
|
||||
|
||||
assert [%{"id" => ^user_id}] = result
|
||||
end
|
||||
|
||||
test "GET /api/v1/directory returns users sorted by most recent statuses", %{conn: conn} do
|
||||
insert(:user, is_discoverable: true)
|
||||
%{id: user_id} = user = insert(:user, is_discoverable: true)
|
||||
insert(:user, is_discoverable: true)
|
||||
|
||||
{:ok, _activity} = CommonAPI.post(user, %{status: "yay i'm discoverable"})
|
||||
|
||||
result =
|
||||
conn
|
||||
|> get("/api/v1/directory?order=active")
|
||||
|> json_response_and_validate_schema(200)
|
||||
|
||||
assert [%{"id" => ^user_id} | _tail] = result
|
||||
end
|
||||
end
|
||||
|
|
@ -74,6 +74,7 @@ defmodule Pleroma.Web.MastodonAPI.AccountViewTest do
|
|||
fields: []
|
||||
},
|
||||
fqn: "shp@shitposter.club",
|
||||
last_status_at: nil,
|
||||
pleroma: %{
|
||||
ap_id: user.ap_id,
|
||||
also_known_as: ["https://shitposter.zone/users/shp"],
|
||||
|
|
@ -175,6 +176,7 @@ defmodule Pleroma.Web.MastodonAPI.AccountViewTest do
|
|||
fields: []
|
||||
},
|
||||
fqn: "shp@shitposter.club",
|
||||
last_status_at: nil,
|
||||
pleroma: %{
|
||||
ap_id: user.ap_id,
|
||||
also_known_as: [],
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue