summaryrefslogtreecommitdiff
path: root/test/web/activity_pub/views
diff options
context:
space:
mode:
authorIvan Tashkinov <ivantashkinov@gmail.com>2019-02-17 14:07:04 +0300
committerIvan Tashkinov <ivantashkinov@gmail.com>2019-02-17 14:07:04 +0300
commitbc4f77b10bb4360ac00d1999b1d08fa55e1fa547 (patch)
tree8c87c2cefd1e325a64a19c04d7d7d70ffd8cc485 /test/web/activity_pub/views
parentdcf24a3233bb50689d26f9d7833f98158730ce35 (diff)
parent3b141194715e362d65482672d00b10991d102fa2 (diff)
downloadpleroma-bc4f77b10bb4360ac00d1999b1d08fa55e1fa547.tar.gz
pleroma-bc4f77b10bb4360ac00d1999b1d08fa55e1fa547.zip
[#468] Merged `upstream/develop`, resolved conflicts.
Diffstat (limited to 'test/web/activity_pub/views')
-rw-r--r--test/web/activity_pub/views/user_view_test.exs39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/web/activity_pub/views/user_view_test.exs b/test/web/activity_pub/views/user_view_test.exs
index 7fc870e96..0bc1d4728 100644
--- a/test/web/activity_pub/views/user_view_test.exs
+++ b/test/web/activity_pub/views/user_view_test.exs
@@ -15,4 +15,43 @@ defmodule Pleroma.Web.ActivityPub.UserViewTest do
assert String.contains?(result["publicKey"]["publicKeyPem"], "BEGIN PUBLIC KEY")
end
+
+ describe "endpoints" do
+ test "local users have a usable endpoints structure" do
+ user = insert(:user)
+ {:ok, user} = Pleroma.Web.WebFinger.ensure_keys_present(user)
+
+ result = UserView.render("user.json", %{user: user})
+
+ assert result["id"] == user.ap_id
+
+ %{
+ "sharedInbox" => _,
+ "oauthAuthorizationEndpoint" => _,
+ "oauthRegistrationEndpoint" => _,
+ "oauthTokenEndpoint" => _
+ } = result["endpoints"]
+ end
+
+ test "remote users have an empty endpoints structure" do
+ user = insert(:user, local: false)
+ {:ok, user} = Pleroma.Web.WebFinger.ensure_keys_present(user)
+
+ result = UserView.render("user.json", %{user: user})
+
+ assert result["id"] == user.ap_id
+ assert result["endpoints"] == %{}
+ end
+
+ test "instance users do not expose oAuth endpoints" do
+ user = insert(:user, nickname: nil, local: true)
+ {:ok, user} = Pleroma.Web.WebFinger.ensure_keys_present(user)
+
+ result = UserView.render("user.json", %{user: user})
+
+ refute result["endpoints"]["oauthAuthorizationEndpoint"]
+ refute result["endpoints"]["oauthRegistrationEndpoint"]
+ refute result["endpoints"]["oauthTokenEndpoint"]
+ end
+ end
end