diff options
author | Ivan Tashkinov <ivantashkinov@gmail.com> | 2020-04-17 16:23:58 +0300 |
---|---|---|
committer | Ivan Tashkinov <ivantashkinov@gmail.com> | 2020-04-17 16:23:58 +0300 |
commit | 6e6f95c6aed77cbde1a58edcdbb5cc4f68416bca (patch) | |
tree | 923a489a9a6144bd31ff54d24140c1fd1259ae05 /test/web/activity_pub/activity_pub_controller_test.exs | |
parent | ac672a9d6bfdd3cba7692f80a883bd38b0b09a57 (diff) | |
parent | 09bd1d12c112fe45563c25a76afde65a3381aa26 (diff) | |
download | pleroma-6e6f95c6aed77cbde1a58edcdbb5cc4f68416bca.tar.gz pleroma-6e6f95c6aed77cbde1a58edcdbb5cc4f68416bca.zip |
Merge remote-tracking branch 'remotes/origin/develop' into 1559-follow-request-notifications
# Conflicts:
# CHANGELOG.md
Diffstat (limited to 'test/web/activity_pub/activity_pub_controller_test.exs')
-rw-r--r-- | test/web/activity_pub/activity_pub_controller_test.exs | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/test/web/activity_pub/activity_pub_controller_test.exs b/test/web/activity_pub/activity_pub_controller_test.exs index 573853afa..fbacb3993 100644 --- a/test/web/activity_pub/activity_pub_controller_test.exs +++ b/test/web/activity_pub/activity_pub_controller_test.exs @@ -1239,16 +1239,56 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubControllerTest do filename: "an_image.jpg" } - conn = + object = conn |> assign(:user, user) |> post("/api/ap/upload_media", %{"file" => image, "description" => desc}) + |> json_response(:created) - assert object = json_response(conn, :created) assert object["name"] == desc assert object["type"] == "Document" assert object["actor"] == user.ap_id + assert [%{"href" => object_href, "mediaType" => object_mediatype}] = object["url"] + assert is_binary(object_href) + assert object_mediatype == "image/jpeg" + + activity_request = %{ + "@context" => "https://www.w3.org/ns/activitystreams", + "type" => "Create", + "object" => %{ + "type" => "Note", + "content" => "AP C2S test, attachment", + "attachment" => [object] + }, + "to" => "https://www.w3.org/ns/activitystreams#Public", + "cc" => [] + } + + activity_response = + conn + |> assign(:user, user) + |> post("/users/#{user.nickname}/outbox", activity_request) + |> json_response(:created) + + assert activity_response["id"] + assert activity_response["object"] + assert activity_response["actor"] == user.ap_id + + assert %Object{data: %{"attachment" => [attachment]}} = + Object.normalize(activity_response["object"]) + + assert attachment["type"] == "Document" + assert attachment["name"] == desc + + assert [ + %{ + "href" => ^object_href, + "type" => "Link", + "mediaType" => ^object_mediatype + } + ] = attachment["url"] + # Fails if unauthenticated conn |> post("/api/ap/upload_media", %{"file" => image, "description" => desc}) |> json_response(403) |