From 861790521ad04978c1a21f6a8c0663004f8a3e41 Mon Sep 17 00:00:00 2001 From: Brian May Date: Tue, 24 Oct 2023 14:40:43 +1100 Subject: [PATCH] Add verified routes --- lib/penguin_memories_web.ex | 14 ++++++++++++++ lib/penguin_memories_web/endpoint.ex | 2 +- test/support/conn_case.ex | 2 ++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/lib/penguin_memories_web.ex b/lib/penguin_memories_web.ex index 986c555b..9ce62607 100644 --- a/lib/penguin_memories_web.ex +++ b/lib/penguin_memories_web.ex @@ -16,6 +16,7 @@ defmodule PenguinMemoriesWeb do below. Instead, define any helper function in modules and import those modules here. """ + def static_paths, do: ~w(assets fonts images favicon.ico robots.txt) def controller do quote do @@ -24,6 +25,8 @@ defmodule PenguinMemoriesWeb do import Plug.Conn import PenguinMemoriesWeb.Gettext alias PenguinMemoriesWeb.Router.Helpers, as: Routes + + unquote(verified_routes()) end end @@ -93,6 +96,17 @@ defmodule PenguinMemoriesWeb do import PenguinMemoriesWeb.Gettext import PenguinMemoriesWeb.ViewHelpers alias PenguinMemoriesWeb.Router.Helpers, as: Routes + + unquote(verified_routes()) + end + end + + def verified_routes do + quote do + use Phoenix.VerifiedRoutes, + endpoint: PenguinMemoriesWeb.Endpoint, + router: PenguinMemoriesWeb.Router, + statics: PenguinMemoriesWeb.static_paths() end end diff --git a/lib/penguin_memories_web/endpoint.ex b/lib/penguin_memories_web/endpoint.ex index 1645e987..20610306 100644 --- a/lib/penguin_memories_web/endpoint.ex +++ b/lib/penguin_memories_web/endpoint.ex @@ -25,7 +25,7 @@ defmodule PenguinMemoriesWeb.Endpoint do at: "/", from: :penguin_memories, gzip: false, - only: ~w(css fonts images js favicon.ico robots.txt) + only: PenguinMemoriesWeb.static_paths() # Code reloading can be explicitly enabled under the # :code_reloader configuration of your endpoint. diff --git a/test/support/conn_case.ex b/test/support/conn_case.ex index 883bf17f..4a6fc3d6 100644 --- a/test/support/conn_case.ex +++ b/test/support/conn_case.ex @@ -29,6 +29,8 @@ defmodule PenguinMemoriesWeb.ConnCase do # The default endpoint for testing @endpoint PenguinMemoriesWeb.Endpoint + + use AppWeb, :verified_routes end end