fix for content-type header for tag feed

This commit is contained in:
Alexander Strizhakov 2020-03-13 17:58:14 +03:00
parent 91870c8995
commit 89e4b3ebbd
No known key found for this signature in database
GPG key ID: 022896A53AEF1381
3 changed files with 15 additions and 13 deletions

View file

@ -20,7 +20,7 @@ def feed(conn, %{"tag" => raw_tag} = params) do
|> ActivityPub.fetch_public_activities()
conn
|> put_resp_content_type("application/atom+xml")
|> put_resp_content_type("application/#{format}+xml")
|> put_view(FeedView)
|> render("tag.#{format}",
activities: activities,

View file

@ -49,7 +49,7 @@ test "gets a feed (ATOM)", %{conn: conn} do
response =
conn
|> put_req_header("content-type", "application/atom+xml")
|> put_req_header("accept", "application/atom+xml")
|> get(tag_feed_path(conn, :feed, "pleromaart.atom"))
|> response(200)
@ -65,12 +65,13 @@ test "gets a feed (ATOM)", %{conn: conn} do
assert xpath(xml, ~x"//feed/entry/author/name/text()"ls) == [user.nickname, user.nickname]
assert xpath(xml, ~x"//feed/entry/author/id/text()"ls) == [user.ap_id, user.ap_id]
resp =
conn =
conn
|> put_req_header("content-type", "application/atom+xml")
|> put_req_header("accept", "application/atom+xml")
|> get("/tags/pleromaart.atom", %{"max_id" => activity2.id})
|> response(200)
assert get_resp_header(conn, "content-type") == ["application/atom+xml; charset=utf-8"]
resp = response(conn, 200)
xml = parse(resp)
assert xpath(xml, ~x"//feed/title/text()") == '#pleromaart'
@ -115,7 +116,7 @@ test "gets a feed (RSS)", %{conn: conn} do
response =
conn
|> put_req_header("content-type", "application/rss+xml")
|> put_req_header("accept", "application/rss+xml")
|> get(tag_feed_path(conn, :feed, "pleromaart.rss"))
|> response(200)
@ -155,7 +156,7 @@ test "gets a feed (RSS)", %{conn: conn} do
response =
conn
|> put_req_header("content-type", "application/atom+xml")
|> put_req_header("accept", "application/rss+xml")
|> get(tag_feed_path(conn, :feed, "pleromaart"))
|> response(200)
@ -165,12 +166,13 @@ test "gets a feed (RSS)", %{conn: conn} do
assert xpath(xml, ~x"//channel/description/text()"s) ==
"These are public toots tagged with #pleromaart. You can interact with them if you have an account anywhere in the fediverse."
resp =
conn =
conn
|> put_req_header("content-type", "application/atom+xml")
|> get("/tags/pleromaart", %{"max_id" => activity2.id})
|> response(200)
|> put_req_header("accept", "application/rss+xml")
|> get("/tags/pleromaart.rss", %{"max_id" => activity2.id})
assert get_resp_header(conn, "content-type") == ["application/rss+xml; charset=utf-8"]
resp = response(conn, 200)
xml = parse(resp)
assert xpath(xml, ~x"//channel/title/text()") == '#pleromaart'

View file

@ -19,7 +19,7 @@ defmodule Pleroma.Web.Feed.UserControllerTest do
describe "feed" do
clear_config([:feed])
test "gets an atom feed", %{conn: conn} do
test "gets a feed", %{conn: conn} do
Config.put(
[:feed, :post_title],
%{max_length: 10, omission: "..."}
@ -139,7 +139,7 @@ test "gets a rss feed", %{conn: conn} do
resp =
conn
|> put_req_header("accept", "application/atom+xml")
|> put_req_header("accept", "application/rss+xml")
|> get("/users/#{user.nickname}/feed.rss", %{"max_id" => note_activity2.id})
|> response(200)