+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2018 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
defmodule Pleroma.Web.OStatus.OStatusControllerTest do
use Pleroma.Web.ConnCase
import Pleroma.Factory
- alias Pleroma.{User, Repo}
+ alias Pleroma.{User, Repo, Object}
alias Pleroma.Web.CommonAPI
alias Pleroma.Web.OStatus.ActivityRepresenter
|> response(200)
end
+ test "404s on deleted objects", %{conn: conn} do
+ note_activity = insert(:note_activity)
+ [_, uuid] = hd(Regex.scan(~r/.+\/([\w-]+)$/, note_activity.data["object"]["id"]))
+ object = Object.get_by_ap_id(note_activity.data["object"]["id"])
+
+ conn
+ |> put_req_header("accept", "application/xml")
+ |> get("/objects/#{uuid}")
+ |> response(200)
+
+ Object.delete(object)
+
+ conn
+ |> put_req_header("accept", "application/xml")
+ |> get("/objects/#{uuid}")
+ |> response(404)
+ end
+
test "404s on private activities", %{conn: conn} do
note_activity = insert(:direct_note_activity)
[_, uuid] = hd(Regex.scan(~r/.+\/([\w-]+)$/, note_activity.data["id"]))
|> response(404)
end
- test "renders notice metatags in html format", %{conn: conn} do
- note_activity = insert(:note_activity)
- conn = get(conn, "/notice/#{note_activity.id}")
- body = html_response(conn, 200)
- twitter_card_summary = "<meta content=\"summary\" property=\"twitter:card\">"
-
- description_content =
- "<meta content=\"#{note_activity.data["object"]["content"]}\" property=\"og:description\">"
-
- assert body =~ twitter_card_summary
- assert body =~ description_content
- end
-
test "gets a notice in xml format", %{conn: conn} do
note_activity = insert(:note_activity)