User: Add function to get AP ids from nicknames.

This commit is contained in:
lain 2019-06-03 18:16:11 +02:00
parent 9789e000b0
commit 2b664b048e
2 changed files with 20 additions and 0 deletions

View File

@ -1441,4 +1441,12 @@ defmodule Pleroma.User do
update_and_set_cache(cng)
end
end
def get_ap_ids_by_nicknames(nicknames) do
from(u in User,
where: u.nickname in ^nicknames,
select: u.ap_id
)
|> Repo.all()
end
end

View File

@ -1266,4 +1266,16 @@ defmodule Pleroma.UserTest do
assert user.info.keys == "xxx"
end
end
describe "get_ap_ids_by_nicknames" do
test "it returns a list of AP ids for a given set of nicknames" do
user = insert(:user)
user_two = insert(:user)
ap_ids = User.get_ap_ids_by_nicknames([user.nickname, user_two.nickname, "nonexistent"])
assert length(ap_ids) == 2
assert user.ap_id in ap_ids
assert user_two.ap_id in ap_ids
end
end
end