aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/pleroma/web/activity_pub/transmogrifier/audio_handling_test.exs35
-rw-r--r--test/pleroma/web/activity_pub/transmogrifier/video_handling_test.exs70
-rw-r--r--test/pleroma/web/common_api/utils_test.exs79
-rw-r--r--test/pleroma/web/mastodon_api/controllers/media_controller_test.exs6
-rw-r--r--test/support/factory.ex9
5 files changed, 131 insertions, 68 deletions
diff --git a/test/pleroma/web/activity_pub/transmogrifier/audio_handling_test.exs b/test/pleroma/web/activity_pub/transmogrifier/audio_handling_test.exs
index e733f167d..827cdb0dd 100644
--- a/test/pleroma/web/activity_pub/transmogrifier/audio_handling_test.exs
+++ b/test/pleroma/web/activity_pub/transmogrifier/audio_handling_test.exs
@@ -65,21 +65,24 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier.AudioHandlingTest do
assert object.data["url"] == "https://channels.tests.funkwhale.audio/library/tracks/74"
- assert object.data["attachment"] == [
- %{
- "mediaType" => "audio/ogg",
- "type" => "Link",
- "name" => nil,
- "blurhash" => nil,
- "url" => [
- %{
- "href" =>
- "https://channels.tests.funkwhale.audio/api/v1/listen/3901e5d8-0445-49d5-9711-e096cf32e515/?upload=42342395-0208-4fee-a38d-259a6dae0871&download=false",
- "mediaType" => "audio/ogg",
- "type" => "Link"
- }
- ]
- }
- ]
+ assert match?(
+ [
+ %{
+ "mediaType" => "audio/ogg",
+ "type" => "Link",
+ "name" => nil,
+ "blurhash" => nil,
+ "url" => [
+ %{
+ "href" =>
+ "https://channels.tests.funkwhale.audio/api/v1/listen/3901e5d8-0445-49d5-9711-e096cf32e515/?upload=42342395-0208-4fee-a38d-259a6dae0871&download=false",
+ "mediaType" => "audio/ogg",
+ "type" => "Link"
+ }
+ ]
+ }
+ ],
+ object.data["attachment"]
+ )
end
end
diff --git a/test/pleroma/web/activity_pub/transmogrifier/video_handling_test.exs b/test/pleroma/web/activity_pub/transmogrifier/video_handling_test.exs
index c00df6a04..c8ef354f4 100644
--- a/test/pleroma/web/activity_pub/transmogrifier/video_handling_test.exs
+++ b/test/pleroma/web/activity_pub/transmogrifier/video_handling_test.exs
@@ -49,22 +49,25 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier.VideoHandlingTest do
assert object.data["url"] ==
"https://peertube.moe/videos/watch/df5f464b-be8d-46fb-ad81-2d4c2d1630e3"
- assert object.data["attachment"] == [
- %{
- "type" => "Link",
- "mediaType" => "video/mp4",
- "name" => nil,
- "blurhash" => nil,
- "url" => [
- %{
- "href" =>
- "https://peertube.moe/static/webseed/df5f464b-be8d-46fb-ad81-2d4c2d1630e3-480.mp4",
- "mediaType" => "video/mp4",
- "type" => "Link"
- }
- ]
- }
- ]
+ assert match?(
+ [
+ %{
+ "type" => "Link",
+ "mediaType" => "video/mp4",
+ "name" => nil,
+ "blurhash" => nil,
+ "url" => [
+ %{
+ "href" =>
+ "https://peertube.moe/static/webseed/df5f464b-be8d-46fb-ad81-2d4c2d1630e3-480.mp4",
+ "mediaType" => "video/mp4",
+ "type" => "Link"
+ }
+ ]
+ }
+ ],
+ object.data["attachment"]
+ )
data = File.read!("test/fixtures/tesla_mock/framatube.org-video.json") |> Jason.decode!()
@@ -72,22 +75,25 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier.VideoHandlingTest do
assert object = Object.normalize(activity, fetch: false)
- assert object.data["attachment"] == [
- %{
- "type" => "Link",
- "mediaType" => "video/mp4",
- "name" => nil,
- "blurhash" => nil,
- "url" => [
- %{
- "href" =>
- "https://framatube.org/static/webseed/6050732a-8a7a-43d4-a6cd-809525a1d206-1080.mp4",
- "mediaType" => "video/mp4",
- "type" => "Link"
- }
- ]
- }
- ]
+ assert match?(
+ [
+ %{
+ "type" => "Link",
+ "mediaType" => "video/mp4",
+ "name" => nil,
+ "blurhash" => nil,
+ "url" => [
+ %{
+ "href" =>
+ "https://framatube.org/static/webseed/6050732a-8a7a-43d4-a6cd-809525a1d206-1080.mp4",
+ "mediaType" => "video/mp4",
+ "type" => "Link"
+ }
+ ]
+ }
+ ],
+ object.data["attachment"]
+ )
assert object.data["url"] ==
"https://framatube.org/videos/watch/6050732a-8a7a-43d4-a6cd-809525a1d206"
diff --git a/test/pleroma/web/common_api/utils_test.exs b/test/pleroma/web/common_api/utils_test.exs
index f2043e152..5cb106b36 100644
--- a/test/pleroma/web/common_api/utils_test.exs
+++ b/test/pleroma/web/common_api/utils_test.exs
@@ -511,31 +511,76 @@ defmodule Pleroma.Web.CommonAPI.UtilsTest do
end
test "returns list attachments with desc" do
- object = insert(:note)
- desc = Jason.encode!(%{object.id => "test-desc"})
-
- assert Utils.attachments_from_ids_descs(["#{object.id}", "34"], desc) == [
- Map.merge(object.data, %{"name" => "test-desc"})
- ]
+ media = insert(:media)
+ desc = Jason.encode!(%{media.id => "test-desc"})
+
+ assert match?(
+ [
+ %{
+ "mediaType" => "image/png",
+ "name" => "test-desc",
+ "type" => "Document",
+ "url" => [
+ %{
+ "href" => "https://pleroma.social/images/pleroma_tan_2.1_cofe.png",
+ "mediaType" => "image/png",
+ "type" => "Link"
+ }
+ ]
+ }
+ ],
+ Utils.attachments_from_ids_descs(["#{media.id}", "34"], desc)
+ )
end
end
describe "attachments_from_ids/1" do
test "returns attachments with descs" do
- object = insert(:note)
- desc = Jason.encode!(%{object.id => "test-desc"})
-
- assert Utils.attachments_from_ids(%{
- media_ids: ["#{object.id}"],
- descriptions: desc
- }) == [
- Map.merge(object.data, %{"name" => "test-desc"})
- ]
+ media = insert(:media)
+ desc = Jason.encode!(%{media.id => "test-desc"})
+
+ assert match?(
+ [
+ %{
+ "mediaType" => "image/png",
+ "name" => "test-desc",
+ "type" => "Document",
+ "url" => [
+ %{
+ "href" => "https://pleroma.social/images/pleroma_tan_2.1_cofe.png",
+ "mediaType" => "image/png",
+ "type" => "Link"
+ }
+ ]
+ }
+ ],
+ Utils.attachments_from_ids(%{
+ media_ids: ["#{media.id}"],
+ descriptions: desc
+ })
+ )
end
test "returns attachments without descs" do
- object = insert(:note)
- assert Utils.attachments_from_ids(%{media_ids: ["#{object.id}"]}) == [object.data]
+ media = insert(:media)
+
+ assert match?(
+ [
+ %{
+ "mediaType" => "image/png",
+ "name" => nil,
+ "type" => "Document",
+ "url" => [
+ %{
+ "href" => "https://pleroma.social/images/pleroma_tan_2.1_cofe.png",
+ "mediaType" => "image/png",
+ "type" => "Link"
+ }
+ ]
+ }
+ ],
+ Utils.attachments_from_ids(%{media_ids: ["#{media.id}"]})
+ )
end
test "returns [] when not pass media_ids" do
diff --git a/test/pleroma/web/mastodon_api/controllers/media_controller_test.exs b/test/pleroma/web/mastodon_api/controllers/media_controller_test.exs
index c7470d3df..b285bca7a 100644
--- a/test/pleroma/web/mastodon_api/controllers/media_controller_test.exs
+++ b/test/pleroma/web/mastodon_api/controllers/media_controller_test.exs
@@ -38,7 +38,7 @@ defmodule Pleroma.Web.MastodonAPI.MediaControllerTest do
assert media["id"]
media = Media.get_by_id(media["id"])
- assert media.user_id == conn.assigns[:user].id
+ assert media.actor == conn.assigns[:user].ap_id
end
test "/api/v2/media", %{conn: conn, user: user, image: image} do
@@ -64,7 +64,7 @@ defmodule Pleroma.Web.MastodonAPI.MediaControllerTest do
assert media["id"]
media = Media.get_by_id(media["id"])
- assert media.user_id == user.id
+ assert media.actor == user.ap_id
end
end
@@ -134,7 +134,7 @@ defmodule Pleroma.Web.MastodonAPI.MediaControllerTest do
test "it returns 403 if media object requested by non-owner", %{media: media, user: user} do
%{conn: conn, user: other_user} = oauth_access(["read:media"])
- assert media.user_id == user.id
+ assert media.actor == user.ap_id
refute user.id == other_user.id
conn
diff --git a/test/support/factory.ex b/test/support/factory.ex
index bf9592064..2f5aa970e 100644
--- a/test/support/factory.ex
+++ b/test/support/factory.ex
@@ -458,4 +458,13 @@ defmodule Pleroma.Factory do
phrase: "cofe"
}
end
+
+ def media_factory do
+ %Pleroma.Media{
+ href: "https://pleroma.social/images/pleroma_tan_2.1_cofe.png",
+ type: "Link",
+ media_type: "image/png",
+ actor: build(:user).ap_id
+ }
+ end
end