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 @@ defmodule Pleroma.Web.Feed.TagController do
|> ActivityPub.fetch_public_activities() |> ActivityPub.fetch_public_activities()
conn conn
|> put_resp_content_type("application/atom+xml") |> put_resp_content_type("application/#{format}+xml")
|> put_view(FeedView) |> put_view(FeedView)
|> render("tag.#{format}", |> render("tag.#{format}",
activities: activities, activities: activities,

View File

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

View File

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