Merge branch 'small-jsonld-refactor' into 'develop'
authorlambda <pleromagit@rogerbraun.net>
Thu, 8 Nov 2018 16:23:58 +0000 (16:23 +0000)
committerlambda <pleromagit@rogerbraun.net>
Thu, 8 Nov 2018 16:23:58 +0000 (16:23 +0000)
Small jsonld refactor

See merge request pleroma/pleroma!433

lib/pleroma/web/activity_pub/transmogrifier.ex
lib/pleroma/web/activity_pub/views/object_view.ex
test/web/activity_pub/transmogrifier_test.exs
test/web/activity_pub/views/object_view_test.exs

index d72f4a39a8904ae03fbfb2d8d771482686bede54..a112d4cedbf2308f6487cc3fd8f92f19f39e214e 100644 (file)
@@ -604,7 +604,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
     data =
       data
       |> Map.put("object", object)
-      |> Map.put("@context", "https://www.w3.org/ns/activitystreams")
+      |> Map.merge(Utils.make_json_ld_header())
 
     {:ok, data}
   end
@@ -623,7 +623,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
       data =
         data
         |> Map.put("object", object)
-        |> Map.put("@context", "https://www.w3.org/ns/activitystreams")
+        |> Map.merge(Utils.make_json_ld_header())
 
       {:ok, data}
     end
@@ -641,7 +641,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
       data =
         data
         |> Map.put("object", object)
-        |> Map.put("@context", "https://www.w3.org/ns/activitystreams")
+        |> Map.merge(Utils.make_json_ld_header())
 
       {:ok, data}
     end
@@ -651,7 +651,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
     data =
       data
       |> maybe_fix_object_url
-      |> Map.put("@context", "https://www.w3.org/ns/activitystreams")
+      |> Map.merge(Utils.make_json_ld_header())
 
     {:ok, data}
   end
index cc0b0556bcf3571b9e54d426d970ac756bbd0bf3..df734a871f76ae32ef64d66751abcd4c4eb58b64 100644 (file)
@@ -3,23 +3,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectView do
   alias Pleroma.Web.ActivityPub.Transmogrifier
 
   def render("object.json", %{object: object}) do
-    base = %{
-      "@context" => [
-        "https://www.w3.org/ns/activitystreams",
-        "https://w3id.org/security/v1",
-        %{
-          "manuallyApprovesFollowers" => "as:manuallyApprovesFollowers",
-          "sensitive" => "as:sensitive",
-          "Hashtag" => "as:Hashtag",
-          "ostatus" => "http://ostatus.org#",
-          "atomUri" => "ostatus:atomUri",
-          "inReplyToAtomUri" => "ostatus:inReplyToAtomUri",
-          "conversation" => "ostatus:conversation",
-          "toot" => "http://joinmastodon.org/ns#",
-          "Emoji" => "toot:Emoji"
-        }
-      ]
-    }
+    base = Pleroma.Web.ActivityPub.Utils.make_json_ld_header()
 
     additional = Transmogrifier.prepare_object(object.data)
     Map.merge(base, additional)
index 6a6f2a44cce24dea66d4dc43e9550d630f46403a..07ff1deebe6b186fab0f9159c80e56e3f19a0a2b 100644 (file)
@@ -695,7 +695,9 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
       {:ok, activity} = CommonAPI.post(user, %{"status" => "hey"})
       {:ok, modified} = Transmogrifier.prepare_outgoing(activity.data)
 
-      assert modified["@context"] == "https://www.w3.org/ns/activitystreams"
+      assert modified["@context"] ==
+               Pleroma.Web.ActivityPub.Utils.make_json_ld_header()["@context"]
+
       assert modified["object"]["conversation"] == modified["context"]
     end
 
index 6a1311be71cb2274d1fd189731ab07a4d3f4648b..7e08dff5d1551e4a8fed1dc92ffea5b81a4dae48 100644 (file)
@@ -13,5 +13,6 @@ defmodule Pleroma.Web.ActivityPub.ObjectViewTest do
     assert result["to"] == note.data["to"]
     assert result["content"] == note.data["content"]
     assert result["type"] == "Note"
+    assert result["@context"]
   end
 end