Feed improvements

And show public feed links on the group page

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel
2021-01-19 11:24:21 +01:00
parent e0d9762f36
commit e76a270e72
53 changed files with 4071 additions and 4152 deletions

View File

@@ -5,6 +5,8 @@ defmodule Mobilizon.Service.MetadataTest do
alias Mobilizon.Posts.Post
alias Mobilizon.Service.Metadata
alias Mobilizon.Tombstone
alias Mobilizon.Web.Endpoint
alias Mobilizon.Web.Router.Helpers, as: Routes
use Mobilizon.DataCase
import Mobilizon.Factory
@@ -21,7 +23,11 @@ defmodule Mobilizon.Service.MetadataTest do
group.avatar.url
}\" property=\"og:image\"><script type=\"application/ld+json\">{\"@context\":\"http://schema.org\",\"@type\":\"Organization\",\"address\":null,\"name\":\"#{
group.name
}\",\"url\":\"#{group.url}\"}</script>"
}\",\"url\":\"#{group.url}\"}</script><link href=\"#{
Routes.feed_url(Endpoint, :actor, group.preferred_username, "atom")
}\" rel=\"alternate\" title=\"#{group.name}'s feed\" type=\"application/atom+xml\"><link href=\"#{
Routes.feed_url(Endpoint, :actor, group.preferred_username, "ics")
}\" rel=\"alternate\" title=\"#{group.name}'s feed\" type=\"text/calendar\">"
assert group
|> Map.put(:avatar, nil)
@@ -33,7 +39,11 @@ defmodule Mobilizon.Service.MetadataTest do
group.preferred_username
}\" property=\"profile:username\"><meta content=\"summary\" property=\"twitter:card\"><script type=\"application/ld+json\">{\"@context\":\"http://schema.org\",\"@type\":\"Organization\",\"address\":null,\"name\":\"#{
group.name
}\",\"url\":\"#{group.url}\"}</script>"
}\",\"url\":\"#{group.url}\"}</script><link href=\"#{
Routes.feed_url(Endpoint, :actor, group.preferred_username, "atom")
}\" rel=\"alternate\" title=\"#{group.name}'s feed\" type=\"application/atom+xml\"><link href=\"#{
Routes.feed_url(Endpoint, :actor, group.preferred_username, "ics")
}\" rel=\"alternate\" title=\"#{group.name}'s feed\" type=\"text/calendar\">"
end
test "that is not a group doesn't give anything" do

View File

@@ -3,6 +3,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
import Mobilizon.Factory
alias Mobilizon.Config
alias Mobilizon.Web.Endpoint
alias Mobilizon.Web.Router.Helpers, as: Routes
@@ -28,7 +29,8 @@ defmodule Mobilizon.Web.FeedControllerTest do
{:ok, feed} = ElixirFeedParser.parse(conn.resp_body)
assert feed.title == actor.preferred_username <> "'s public events feed on Mobilizon"
assert feed.title ==
actor.preferred_username <> "'s public events feed on #{Config.instance_name()}"
[entry1, entry2] = entries = feed.entries
@@ -232,7 +234,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
{:ok, feed} = ElixirFeedParser.parse(conn.resp_body)
assert feed.title == "Feed for #{user.email} on Mobilizon"
assert feed.title == "Feed for #{user.email} on #{Config.instance_name()}"
entries = feed.entries
@@ -267,7 +269,8 @@ defmodule Mobilizon.Web.FeedControllerTest do
{:ok, feed} = ElixirFeedParser.parse(conn.resp_body)
assert feed.title == "#{actor1.preferred_username}'s private events feed on Mobilizon"
assert feed.title ==
"#{actor1.preferred_username}'s private events feed on #{Config.instance_name()}"
[entry] = feed.entries
assert entry.title == event1.title