tests: mastodon api: add test verifying that peertube videos are correctly rendered
authorWilliam Pitcock <nenolod@dereferenced.org>
Sun, 23 Dec 2018 13:42:42 +0000 (13:42 +0000)
committerWilliam Pitcock <nenolod@dereferenced.org>
Sun, 23 Dec 2018 13:44:01 +0000 (13:44 +0000)
test/web/mastodon_api/status_view_test.exs

index b7ac92760a35a6f23c9c9e1fd80a71e32ee795e1..0af7d86212e72045b4e4ad389b7a5491d2b7d0d7 100644 (file)
@@ -5,6 +5,8 @@ defmodule Pleroma.Web.MastodonAPI.StatusViewTest do
   alias Pleroma.User
   alias Pleroma.Web.OStatus
   alias Pleroma.Web.CommonAPI
+  alias Pleroma.Web.ActivityPub.ActivityPub
+  alias Pleroma.Activity
   import Pleroma.Factory
   import Tesla.Mock
 
@@ -157,6 +159,22 @@ defmodule Pleroma.Web.MastodonAPI.StatusViewTest do
     assert represented[:emojis] == []
   end
 
+  test "a peertube video" do
+    user = insert(:user)
+
+    {:ok, object} =
+      ActivityPub.fetch_object_from_id(
+        "https://peertube.moe/videos/watch/df5f464b-be8d-46fb-ad81-2d4c2d1630e3"
+      )
+
+    %Activity{} = activity = Activity.get_create_activity_by_object_ap_id(object.data["id"])
+
+    represented = StatusView.render("status.json", %{for: user, activity: activity})
+
+    assert represented[:id] == to_string(activity.id)
+    assert length(represented[:media_attachments]) == 1
+  end
+
   describe "build_tags/1" do
     test "it returns a a dictionary tags" do
       object_tags = [