summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortusooa <tusooa@kazv.moe>2023-12-27 17:10:32 +0000
committertusooa <tusooa@kazv.moe>2023-12-27 17:10:32 +0000
commit40f170f0a70eaf81f13bbe64964a98843a2ecaa9 (patch)
treefd0b04e34a2f3df53b35ed5c3eb8301ad242ede6
parent5f1d70736711275ac9f0c95e5ada4cb2f1a96e11 (diff)
parent28e5e65676ea08ae9e329d51648baf06dcf950c0 (diff)
downloadpleroma-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.fix1
-rw-r--r--lib/pleroma/user.ex2
-rw-r--r--test/pleroma/user_test.exs18
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