Improve design so existing tests do not break

This commit is contained in:
Mark Felder 2025-07-30 13:17:50 -07:00
commit 4217ababfc
3 changed files with 28 additions and 14 deletions

View file

@ -17,15 +17,7 @@ defmodule Pleroma.Tesla.Middleware.EncodeUrl do
@impl Tesla.Middleware
def call(%Tesla.Env{url: url} = env, next, _) do
url =
URI.parse(url)
|> then(fn parsed ->
path = encode_path(parsed.path)
query = encode_query(parsed.query)
%{parsed | path: path, query: query}
end)
|> URI.to_string()
url = encode_url(url)
env = %{env | url: url}
@ -35,6 +27,17 @@ defmodule Pleroma.Tesla.Middleware.EncodeUrl do
end
end
defp encode_url(url) when is_binary(url) do
URI.parse(url)
|> then(fn parsed ->
path = encode_path(parsed.path)
query = encode_query(parsed.query)
%{parsed | path: path, query: query}
end)
|> URI.to_string()
end
defp encode_path(nil), do: nil
defp encode_path(path) when is_binary(path) do