diff options
| author | Wim Vanderbauwhede <wim.vanderbauwhede@mail.be> | 2019-02-14 16:41:40 +0000 |
|---|---|---|
| committer | Wim Vanderbauwhede <wim.vanderbauwhede@mail.be> | 2019-02-14 16:41:40 +0000 |
| commit | 04b1c135543965860029557fc216eb38fd63b6c7 (patch) | |
| tree | c1fb60376eeb35539704c23d282af7777895d4ea /test/web/activity_pub/views | |
| parent | bf5b1c7f06c9f8882c40cf2385439bee3b74522c (diff) | |
| parent | 1d17082ab2523eb75ee0ca4a49e45da0d0edabd7 (diff) | |
| download | pleroma-04b1c135543965860029557fc216eb38fd63b6c7.tar.gz pleroma-04b1c135543965860029557fc216eb38fd63b6c7.zip | |
Merge remote-tracking branch 'upstream/develop' into patch-image-description
Diffstat (limited to 'test/web/activity_pub/views')
| -rw-r--r-- | test/web/activity_pub/views/user_view_test.exs | 39 |
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 |
