refactor: use Phoenix verified routes

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel
2023-12-01 09:49:54 +01:00
parent 4f15535fa9
commit b315e1d7ff
83 changed files with 227 additions and 372 deletions

View File

@@ -71,7 +71,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn =
conn
|> get(Routes.page_url(Endpoint, :event, event.uuid))
|> get(url(~p"/events/#{event.uuid}"))
assert json_response(conn, 200) ==
PageView.render("event.activity-json", %{conn: %{assigns: %{object: event}}})
@@ -83,7 +83,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn =
conn
|> put_req_header("accept", "application/activity+json")
|> get(Routes.page_url(Endpoint, :event, event.uuid))
|> get(url(~p"/events/#{event.uuid}"))
assert json_response(conn, 404)
end
@@ -94,7 +94,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn =
conn
|> put_req_header("accept", "application/activity+json")
|> get(Routes.page_url(Endpoint, :event, event.uuid))
|> get(url(~p"/events/#{event.uuid}"))
assert redirected_to(conn) == "https://someremote.url/events/here"
end
@@ -107,7 +107,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn =
conn
|> put_req_header("accept", "application/activity+json")
|> get(Routes.page_url(Endpoint, :comment, comment.uuid))
|> get(url(~p"/comments/#{comment.uuid}"))
assert json_response(conn, 200) ==
PageView.render("comment.activity-json", %{conn: %{assigns: %{object: comment}}})
@@ -119,7 +119,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn =
conn
|> put_req_header("accept", "application/activity+json")
|> get(Routes.page_url(Endpoint, :comment, comment.uuid))
|> get(url(~p"/comments/#{comment.uuid}"))
assert redirected_to(conn) == "https://someremote.url/comments/here"
end
@@ -130,7 +130,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn =
conn
|> put_req_header("accept", "application/activity+json")
|> get(Routes.page_url(Endpoint, :comment, comment.uuid))
|> get(url(~p"/comments/#{comment.uuid}"))
assert json_response(conn, 404)
end
@@ -567,7 +567,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn
|> assign(:actor, remote_actor_2)
|> put_req_header("accept", "application/activity+json")
|> get(Routes.activity_pub_url(Endpoint, :member, member.id))
|> get(url(~p"/member/#{member.id}"))
assert json_response(conn, 200) ==
ActorView.render("member.json", %{member: member})
@@ -590,7 +590,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn
|> assign(:actor, remote_actor_2)
|> put_req_header("accept", "application/activity+json")
|> get(Routes.activity_pub_url(Endpoint, :member, member.id))
|> get(url(~p"/member/#{member.id}"))
assert redirected_to(conn) == "https://someremote.url/member/here"
end
@@ -601,7 +601,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
conn =
conn
|> put_req_header("accept", "application/activity+json")
|> get(Routes.activity_pub_url(Endpoint, :member, member.id))
|> get(url(~p"/member/#{member.id}"))
assert json_response(conn, 404)
end

View File

@@ -134,7 +134,7 @@ defmodule Mobilizon.Web.ApplicationControllerTest do
res = json_response(conn, 200)
verification_uri = Routes.page_url(Mobilizon.Web.Endpoint, :auth_device)
verification_uri = url(~p"/login/device")
assert %{
"device_code" => _device_code,
@@ -158,7 +158,7 @@ defmodule Mobilizon.Web.ApplicationControllerTest do
res = json_response(conn, 200)
verification_uri = Routes.page_url(Mobilizon.Web.Endpoint, :auth_device)
verification_uri = url(~p"/login/device")
assert %{
"device_code" => _device_code,

View File

@@ -26,7 +26,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn
|> get(
Endpoint
|> Routes.feed_url(:actor, actor.preferred_username, "atom")
|> ~p"/@#{actor.preferred_username}/feed/atom"
|> URI.decode()
)
@@ -63,7 +63,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn
|> get(
Endpoint
|> Routes.feed_url(:actor, actor.preferred_username, "atom")
|> ~p"/@#{actor.preferred_username}/feed/atom"
|> URI.decode()
)
@@ -79,7 +79,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
|> put_req_header("accept", "application/atom+xml")
|> get(
Endpoint
|> Routes.feed_url(:actor, actor.preferred_username, "atom")
|> ~p"/@#{actor.preferred_username}/feed/atom"
|> URI.decode()
)
@@ -132,11 +132,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn =
conn
|> get(
Endpoint
|> Routes.feed_url(:actor, group.preferred_username, "ics")
|> URI.decode()
)
|> get(URI.decode(~p"/@#{group.preferred_username}/feed/ics"))
assert res = response(conn, 200)
assert res =~ "BEGIN:VCALENDAR"
@@ -163,11 +159,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn =
conn
|> get(
Endpoint
|> Routes.feed_url(:actor, actor.preferred_username, "ics")
|> URI.decode()
)
|> get(URI.decode(~p"/@#{actor.preferred_username}/feed/ics"))
assert response(conn, 404)
end
@@ -179,11 +171,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn =
conn
|> put_req_header("accept", "text/calendar")
|> get(
Endpoint
|> Routes.feed_url(:actor, actor.preferred_username, "ics")
|> URI.decode()
)
|> get(URI.decode(~p"/@#{actor.preferred_username}/feed/ics"))
assert response(conn, 200) =~ "BEGIN:VCALENDAR"
assert response_content_type(conn, :calendar) =~ "charset=utf-8"
@@ -209,7 +197,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn
|> get(
Endpoint
|> Routes.feed_url(:event, event1.uuid, "ics")
|> ~p"/events/#{event1.uuid}/export/ics"
|> URI.decode()
)
@@ -241,11 +229,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn =
conn
|> get(
Endpoint
|> Routes.feed_url(:going, ShortUUID.encode!(feed_token.token), "atom")
|> URI.decode()
)
|> get(URI.decode(~p"/events/going/#{ShortUUID.encode!(feed_token.token)}", "atom"))
assert response(conn, 200) =~ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
assert response_content_type(conn, :xml) =~ "charset=utf-8"
@@ -279,11 +263,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn =
conn
|> put_req_header("accept", "application/atom+xml")
|> get(
Endpoint
|> Routes.feed_url(:going, ShortUUID.encode!(feed_token.token), "atom")
|> URI.decode()
)
|> get(URI.decode(~p"/events/going/#{ShortUUID.encode!(feed_token.token)}", "atom"))
assert response(conn, 200) =~ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
assert response_content_type(conn, :xml) =~ "charset=utf-8"
@@ -301,11 +281,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
test "it returns 404 for an not existing feed", %{conn: conn} do
conn =
conn
|> get(
Endpoint
|> Routes.feed_url(:going, "not existing", "atom")
|> URI.decode()
)
|> get(URI.decode(~p"/events/going/not_existing/atom"))
assert response(conn, 404)
end
@@ -329,11 +305,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn =
conn
|> put_req_header("accept", "text/calendar")
|> get(
Endpoint
|> Routes.feed_url(:going, ShortUUID.encode!(feed_token.token), "ics")
|> URI.decode()
)
|> get(URI.decode(~p"/events/going/#{ShortUUID.encode!(feed_token.token)}", "ics"))
assert response(conn, 200) =~ "BEGIN:VCALENDAR"
assert response_content_type(conn, :calendar) =~ "charset=utf-8"
@@ -363,11 +335,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn =
conn
|> put_req_header("accept", "text/calendar")
|> get(
Endpoint
|> Routes.feed_url(:going, ShortUUID.encode!(feed_token.token), "ics")
|> URI.decode()
)
|> get(URI.decode(~p"/events/going/#{ShortUUID.encode!(feed_token.token)}", "ics"))
assert response(conn, 200) =~ "BEGIN:VCALENDAR"
assert response_content_type(conn, :calendar) =~ "charset=utf-8"
@@ -383,7 +351,7 @@ defmodule Mobilizon.Web.FeedControllerTest do
conn
|> get(
Endpoint
|> Routes.feed_url(:going, "not existing", "ics")
|> ~p"/events/going/not_existing/ics"
|> URI.decode()
)

View File

@@ -12,11 +12,11 @@ defmodule Mobilizon.Web.NodeInfoControllerTest do
assert json_response(conn, 200) == %{
"links" => [
%{
"href" => Routes.node_info_url(Endpoint, :nodeinfo, "2.0"),
"href" => ~p"/.well-known/nodeinfo/2.0Ã",
"rel" => "http://nodeinfo.diaspora.software/ns/schema/2.0"
},
%{
"href" => Routes.node_info_url(Endpoint, :nodeinfo, "2.1"),
"href" => ~p"/.well-known/nodeinfo/2.1",
"rel" => "http://nodeinfo.diaspora.software/ns/schema/2.1"
}
]

View File

@@ -53,42 +53,42 @@ defmodule Mobilizon.Web.PageControllerTest do
test "GET /events/:uuid", %{conn: conn} do
event = insert(:event, visibility: :public)
conn = get(conn, Routes.page_url(Endpoint, :event, event.uuid))
conn = get(conn, url(~p"/events/#{event.uuid}"))
assert html_response(conn, 200) =~ event.title
end
test "GET /events/:uuid with unlisted event", %{conn: conn} do
event = insert(:event, visibility: :unlisted)
conn = get(conn, Routes.page_url(Endpoint, :event, event.uuid))
conn = get(conn, url(~p"/events/#{event.uuid}"))
assert html_response(conn, 200) =~ event.title
assert ["noindex"] == get_resp_header(conn, "x-robots-tag")
end
test "GET /events/:uuid with not existing event", %{conn: conn} do
conn = get(conn, Routes.page_url(Endpoint, :event, "not_existing_event"))
conn = get(conn, ~p"/events/not_existing_event")
assert html_response(conn, 404)
end
test "GET /events/:uuid with event not public", %{conn: conn} do
event = insert(:event, visibility: :restricted)
conn = get(conn, Routes.page_url(Endpoint, :event, event.uuid))
conn = get(conn, url(~p"/events/#{event.uuid}"))
assert html_response(conn, 404)
end
test "GET /comments/:uuid", %{conn: conn} do
comment = insert(:comment)
conn = get(conn, Routes.page_url(Endpoint, :comment, comment.uuid))
conn = get(conn, url(~p"/comments/#{comment.uuid}"))
assert html_response(conn, 200) =~ comment.text
end
test "GET /comments/:uuid with not existing comment", %{conn: conn} do
conn = get(conn, Routes.page_url(Endpoint, :comment, "not_existing_comment"))
conn = get(conn, ~p"/comments/not_existing_comment")
assert html_response(conn, 404)
end
test "GET /comments/:uuid with comment not public", %{conn: conn} do
comment = insert(:comment, visibility: :private)
conn = get(conn, Routes.page_url(Endpoint, :comment, comment.uuid))
conn = get(conn, url(~p"/comments/#{comment.uuid}"))
assert html_response(conn, 404)
end
end