X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fweb%2Factivity_pub%2Factivity_pub_test.exs;h=2c6f67621d23a6220e4c494e65bbf9d3284e1da5;hb=65ef18a7157f8cfcc494ad7a72ce083e79e38d26;hp=613c5a04fc3e3e4a2f084f6dd8ee9615abc29e53;hpb=1f0f79d95911769f1a99aebc5df47aa98b38c360;p=akkoma diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index 613c5a04f..2c6f67621 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -1,7 +1,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do use Pleroma.DataCase alias Pleroma.Web.ActivityPub.ActivityPub - alias Pleroma.Activity + alias Pleroma.{Activity, Object} alias Pleroma.Builders.ActivityBuilder describe "insertion" do @@ -24,6 +24,18 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do assert activity.data["ok"] == data["ok"] assert activity.data["id"] == given_id end + + test "adds an id to a given object if it lacks one and inserts it to the object database" do + data = %{ + "object" => %{ + "ok" => true + } + } + + {:ok, %Activity{} = activity} = ActivityPub.insert(data) + assert is_binary(activity.data["object"]["id"]) + assert %Object{} = Object.get_by_ap_id(activity.data["object"]["id"]) + end end describe "fetch activities for recipients" do @@ -38,6 +50,18 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do end end + describe "fetch activities in context" do + test "retrieves activities that have a given context" do + {:ok, activity} = ActivityBuilder.insert(%{"context" => "2hu"}) + {:ok, activity_two} = ActivityBuilder.insert(%{"context" => "2hu"}) + {:ok, _activity_three} = ActivityBuilder.insert(%{"context" => "3hu"}) + + activities = ActivityPub.fetch_activities_for_context("2hu") + + assert activities == [activity, activity_two] + end + end + describe "public fetch activities" do test "retrieves public activities" do %{public: public} = ActivityBuilder.public_and_non_public @@ -71,4 +95,13 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do assert last == last_expected end end + + describe "uploading files" do + test "copies the file to the configured folder" do + file = %Plug.Upload{content_type: "image/jpg", path: Path.absname("test/fixtures/image.jpg"), filename: "an_image.jpg"} + + {:ok, %Object{} = object} = ActivityPub.upload(file) + assert object.data["name"] == "an_image.jpg" + end + end end