diff options
author | tusooa <tusooa@kazv.moe> | 2023-12-27 17:10:32 +0000 |
---|---|---|
committer | tusooa <tusooa@kazv.moe> | 2023-12-27 17:10:32 +0000 |
commit | 40f170f0a70eaf81f13bbe64964a98843a2ecaa9 (patch) | |
tree | fd0b04e34a2f3df53b35ed5c3eb8301ad242ede6 | |
parent | 5f1d70736711275ac9f0c95e5ada4cb2f1a96e11 (diff) | |
parent | 28e5e65676ea08ae9e329d51648baf06dcf950c0 (diff) | |
download | pleroma-40f170f0a70eaf81f13bbe64964a98843a2ecaa9.tar.gz pleroma-40f170f0a70eaf81f13bbe64964a98843a2ecaa9.zip |
Merge branch 'webfinger-fix' into 'develop'
Use correct domain for fqn and InstanceView
See merge request pleroma/pleroma!3958
-rw-r--r-- | changelog.d/local-webfinger.fix | 1 | ||||
-rw-r--r-- | lib/pleroma/user.ex | 2 | ||||
-rw-r--r-- | test/pleroma/user_test.exs | 18 |
3 files changed, 16 insertions, 5 deletions
diff --git a/changelog.d/local-webfinger.fix b/changelog.d/local-webfinger.fix new file mode 100644 index 000000000..d99056efd --- /dev/null +++ b/changelog.d/local-webfinger.fix @@ -0,0 +1 @@ +Use correct domain for fqn and InstanceView
\ No newline at end of file diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 5f98935b3..10dafbe6f 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -2252,7 +2252,7 @@ defmodule Pleroma.User do if String.contains?(user.nickname, "@") do user.nickname else - %{host: host} = URI.parse(user.ap_id) + host = Pleroma.Web.WebFinger.host() user.nickname <> "@" <> host end end diff --git a/test/pleroma/user_test.exs b/test/pleroma/user_test.exs index 77ca9198b..0da3f820c 100644 --- a/test/pleroma/user_test.exs +++ b/test/pleroma/user_test.exs @@ -2683,13 +2683,23 @@ defmodule Pleroma.UserTest do end describe "full_nickname/1" do - test "returns fully qualified nickname for local and remote users" do - local_user = - insert(:user, nickname: "local_user", ap_id: "https://somehost.com/users/local_user") + test "returns fully qualified nickname for local users" do + local_user = insert(:user, nickname: "local_user") + assert User.full_nickname(local_user) == "local_user@localhost" + end + + test "returns fully qualified nickname for local users when using different domain for webfinger" do + clear_config([Pleroma.Web.WebFinger, :domain], "plemora.dev") + + local_user = insert(:user, nickname: "local_user") + + assert User.full_nickname(local_user) == "local_user@plemora.dev" + end + + test "returns fully qualified nickname for remote users" do remote_user = insert(:user, nickname: "remote@host.com", local: false) - assert User.full_nickname(local_user) == "local_user@somehost.com" assert User.full_nickname(remote_user) == "remote@host.com" end |