diff options
author | lain <lain@soykaf.club> | 2021-02-28 16:17:34 +0000 |
---|---|---|
committer | lain <lain@soykaf.club> | 2021-02-28 16:17:34 +0000 |
commit | e6a14e1cd10a52450eaf3d1ba258eac4042d82a9 (patch) | |
tree | 79c9920f4b01dc45a7292efcdaf9e97c7391a373 /test/pleroma/web/mastodon_api/controllers/status_controller_test.exs | |
parent | d0823d7f1e95c91a53545fae9299e5bcc6eaf758 (diff) | |
parent | 0faf8dbef8f0d77fdd42b36ade4d55c42f0ccc8c (diff) |
Merge branch 'feat/client_app_details' into 'develop'
Support application field
See merge request pleroma/pleroma!3311
Diffstat (limited to 'test/pleroma/web/mastodon_api/controllers/status_controller_test.exs')
-rw-r--r-- | test/pleroma/web/mastodon_api/controllers/status_controller_test.exs | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/test/pleroma/web/mastodon_api/controllers/status_controller_test.exs b/test/pleroma/web/mastodon_api/controllers/status_controller_test.exs index c59b156bf..dd2f306b7 100644 --- a/test/pleroma/web/mastodon_api/controllers/status_controller_test.exs +++ b/test/pleroma/web/mastodon_api/controllers/status_controller_test.exs @@ -357,6 +357,50 @@ defmodule Pleroma.Web.MastodonAPI.StatusControllerTest do assert activity.data["to"] == [user2.ap_id] assert activity.data["cc"] == [] end + + test "discloses application metadata when enabled" do + user = insert(:user, disclose_client: true) + %{user: _user, token: token, conn: conn} = oauth_access(["write:statuses"], user: user) + + %Pleroma.Web.OAuth.Token{ + app: %Pleroma.Web.OAuth.App{ + client_name: _app_name, + website: _app_website + } + } = token + + result = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/statuses", %{ + "status" => "cofe is my copilot" + }) + + assert %{ + "content" => "cofe is my copilot", + "application" => %{ + "name" => app_name, + "website" => app_website + } + } = json_response_and_validate_schema(result, 200) + end + + test "hides application metadata when disabled" do + user = insert(:user, disclose_client: false) + %{user: _user, token: _token, conn: conn} = oauth_access(["write:statuses"], user: user) + + result = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/statuses", %{ + "status" => "club mate is my wingman" + }) + + assert %{ + "content" => "club mate is my wingman", + "application" => nil + } = json_response_and_validate_schema(result, 200) + end end describe "posting scheduled statuses" do |