Implement Credo software design suggestions
This commit is contained in:
@@ -22,6 +22,8 @@ defmodule Mobilizon.Federation.ActivityPub.TransmogrifierTest do
|
||||
|
||||
alias Mobilizon.GraphQL.API
|
||||
|
||||
alias Mobilizon.Web.Endpoint
|
||||
|
||||
setup_all do
|
||||
HTTPoison.start()
|
||||
end
|
||||
@@ -961,7 +963,7 @@ defmodule Mobilizon.Federation.ActivityPub.TransmogrifierTest do
|
||||
}
|
||||
|
||||
expected_tag = %{
|
||||
"href" => Mobilizon.Web.Endpoint.url() <> "/tags/2hu",
|
||||
"href" => Endpoint.url() <> "/tags/2hu",
|
||||
"type" => "Hashtag",
|
||||
"name" => "#2hu"
|
||||
}
|
||||
@@ -996,7 +998,7 @@ defmodule Mobilizon.Federation.ActivityPub.TransmogrifierTest do
|
||||
{:ok, activity, _} = API.Comments.create_comment(%{actor_id: actor.id, text: "#2hu"})
|
||||
|
||||
expected_tag = %{
|
||||
"href" => Mobilizon.Web.Endpoint.url() <> "/tags/2hu",
|
||||
"href" => Endpoint.url() <> "/tags/2hu",
|
||||
"type" => "Hashtag",
|
||||
"name" => "#2hu"
|
||||
}
|
||||
|
||||
@@ -11,6 +11,8 @@ defmodule Mobilizon.Federation.WebFingerTest do
|
||||
|
||||
alias Mobilizon.Federation.WebFinger
|
||||
|
||||
alias Mobilizon.Web.Endpoint
|
||||
|
||||
@mastodon_account "tcit@social.tcit.fr"
|
||||
@mastodon_account_username "tcit"
|
||||
@pleroma_account "lain@pleroma.soykaf.com"
|
||||
@@ -24,7 +26,7 @@ defmodule Mobilizon.Federation.WebFingerTest do
|
||||
test "returns a link to the xml lrdd" do
|
||||
host_info = WebFinger.host_meta()
|
||||
|
||||
assert String.contains?(host_info, Mobilizon.Web.Endpoint.url())
|
||||
assert String.contains?(host_info, Endpoint.url())
|
||||
end
|
||||
end
|
||||
|
||||
@@ -34,7 +36,7 @@ defmodule Mobilizon.Federation.WebFingerTest do
|
||||
|
||||
{:ok, result} =
|
||||
WebFinger.webfinger(
|
||||
"#{actor.preferred_username}@#{Mobilizon.Web.Endpoint.host()}",
|
||||
"#{actor.preferred_username}@#{Endpoint.host()}",
|
||||
"JSON"
|
||||
)
|
||||
|
||||
|
||||
@@ -9,6 +9,8 @@ defmodule Mobilizon.GraphQL.Resolvers.PersonTest do
|
||||
|
||||
alias Mobilizon.GraphQL.AbsintheHelpers
|
||||
|
||||
alias Mobilizon.Web.Endpoint
|
||||
|
||||
@non_existent_username "nonexistent"
|
||||
|
||||
describe "Person Resolver" do
|
||||
@@ -120,8 +122,7 @@ defmodule Mobilizon.GraphQL.Resolvers.PersonTest do
|
||||
assert json_response(res, 200)["data"]["loggedPerson"]["preferredUsername"] ==
|
||||
actor.preferred_username
|
||||
|
||||
assert json_response(res, 200)["data"]["loggedPerson"]["avatar"]["url"] =~
|
||||
Mobilizon.Web.Endpoint.url()
|
||||
assert json_response(res, 200)["data"]["loggedPerson"]["avatar"]["url"] =~ Endpoint.url()
|
||||
end
|
||||
|
||||
test "create_person/3 creates a new identity", context do
|
||||
@@ -255,7 +256,7 @@ defmodule Mobilizon.GraphQL.Resolvers.PersonTest do
|
||||
"The beautiful atlantic way"
|
||||
|
||||
assert json_response(res, 200)["data"]["createPerson"]["banner"]["url"] =~
|
||||
Mobilizon.Web.Endpoint.url() <> "/media/"
|
||||
Endpoint.url() <> "/media/"
|
||||
end
|
||||
|
||||
test "update_person/3 updates an existing identity", context do
|
||||
@@ -325,7 +326,7 @@ defmodule Mobilizon.GraphQL.Resolvers.PersonTest do
|
||||
|
||||
assert res_person["banner"]["id"]
|
||||
assert res_person["banner"]["name"] == "The beautiful atlantic way"
|
||||
assert res_person["banner"]["url"] =~ Mobilizon.Web.Endpoint.url() <> "/media/"
|
||||
assert res_person["banner"]["url"] =~ Endpoint.url() <> "/media/"
|
||||
end
|
||||
|
||||
test "update_person/3 should fail to update a not owned identity", context do
|
||||
|
||||
@@ -8,6 +8,8 @@ defmodule Mobilizon.GraphQL.Resolvers.PictureTest do
|
||||
|
||||
alias Mobilizon.GraphQL.AbsintheHelpers
|
||||
|
||||
alias Mobilizon.Web.Endpoint
|
||||
|
||||
setup %{conn: conn} do
|
||||
user = insert(:user)
|
||||
actor = insert(:actor, user: user)
|
||||
@@ -42,8 +44,7 @@ defmodule Mobilizon.GraphQL.Resolvers.PictureTest do
|
||||
|
||||
assert json_response(res, 200)["data"]["picture"]["size"] == 13_120
|
||||
|
||||
assert json_response(res, 200)["data"]["picture"]["url"] =~
|
||||
Mobilizon.Web.Endpoint.url()
|
||||
assert json_response(res, 200)["data"]["picture"]["url"] =~ Endpoint.url()
|
||||
end
|
||||
|
||||
test "picture/3 returns nothing on a non-existent picture", context do
|
||||
|
||||
@@ -20,6 +20,8 @@ defmodule Mobilizon.Web.ConnCase do
|
||||
alias Mobilizon.Storage.Repo
|
||||
alias Mobilizon.Users.User
|
||||
|
||||
alias Mobilizon.Web.Auth
|
||||
|
||||
using do
|
||||
quote do
|
||||
# Import conveniences for testing with connections
|
||||
@@ -30,7 +32,7 @@ defmodule Mobilizon.Web.ConnCase do
|
||||
@endpoint Mobilizon.Web.Endpoint
|
||||
|
||||
def auth_conn(%Plug.Conn{} = conn, %User{} = user) do
|
||||
{:ok, token, _claims} = Mobilizon.Web.Auth.Guardian.encode_and_sign(user)
|
||||
{:ok, token, _claims} = Auth.Guardian.encode_and_sign(user)
|
||||
|
||||
conn
|
||||
|> Plug.Conn.put_req_header("authorization", "Bearer #{token}")
|
||||
|
||||
@@ -8,9 +8,8 @@ defmodule Mobilizon.Factory do
|
||||
alias Mobilizon.Actors.Actor
|
||||
alias Mobilizon.Crypto
|
||||
|
||||
alias Mobilizon.Web.Endpoint
|
||||
alias Mobilizon.Web.{Endpoint, Upload}
|
||||
alias Mobilizon.Web.Router.Helpers, as: Routes
|
||||
alias Mobilizon.Web.Upload
|
||||
|
||||
def user_factory do
|
||||
%Mobilizon.Users.User{
|
||||
@@ -60,7 +59,7 @@ defmodule Mobilizon.Factory do
|
||||
target_actor: build(:actor),
|
||||
actor: build(:actor),
|
||||
id: uuid,
|
||||
url: "#{Mobilizon.Web.Endpoint.url()}/follows/#{uuid}"
|
||||
url: "#{Endpoint.url()}/follows/#{uuid}"
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
@@ -16,8 +16,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
|
||||
alias Mobilizon.Federation.ActivityPub
|
||||
|
||||
alias Mobilizon.Web.ActivityPub.ActorView
|
||||
alias Mobilizon.Web.Endpoint
|
||||
alias Mobilizon.Web.PageView
|
||||
alias Mobilizon.Web.{Endpoint, PageView}
|
||||
alias Mobilizon.Web.Router.Helpers, as: Routes
|
||||
|
||||
setup_all do
|
||||
@@ -104,7 +103,7 @@ defmodule Mobilizon.Web.ActivityPubControllerTest do
|
||||
conn =
|
||||
conn
|
||||
|> assign(:valid_signature, true)
|
||||
|> post("#{Mobilizon.Web.Endpoint.url()}/inbox", data)
|
||||
|> post("#{Endpoint.url()}/inbox", data)
|
||||
|
||||
assert "ok" == json_response(conn, 200)
|
||||
:timer.sleep(500)
|
||||
|
||||
@@ -11,6 +11,8 @@ defmodule Mobilizon.Web.WebFingerControllerTest do
|
||||
alias Mobilizon.Actors.Actor
|
||||
alias Mobilizon.Federation.WebFinger
|
||||
|
||||
alias Mobilizon.Web.Endpoint
|
||||
|
||||
setup_all do
|
||||
Mobilizon.Config.put([:instance, :federating], true)
|
||||
|
||||
@@ -22,7 +24,7 @@ defmodule Mobilizon.Web.WebFingerControllerTest do
|
||||
|
||||
assert response(conn, 200) ==
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?><XRD xmlns=\"http://docs.oasis-open.org/ns/xri/xrd-1.0\"><Link rel=\"lrdd\" template=\"#{
|
||||
Mobilizon.Web.Endpoint.url()
|
||||
Endpoint.url()
|
||||
}/.well-known/webfinger?resource={uri}\" type=\"application/xrd+xml\" /></XRD>"
|
||||
|
||||
assert {"content-type", "application/xrd+xml; charset=utf-8"} in conn.resp_headers
|
||||
|
||||
@@ -10,7 +10,7 @@ defmodule Mobilizon.Web.MediaProxyTest do
|
||||
|
||||
alias Mobilizon.Config
|
||||
|
||||
alias Mobilizon.Web.MediaProxyController
|
||||
alias Mobilizon.Web.{Endpoint, MediaProxyController}
|
||||
|
||||
setup do
|
||||
enabled = Config.get([:media_proxy, :enabled])
|
||||
@@ -35,8 +35,8 @@ defmodule Mobilizon.Web.MediaProxyTest do
|
||||
end
|
||||
|
||||
test "ignores local url" do
|
||||
local_url = Mobilizon.Web.Endpoint.url() <> "/hello"
|
||||
local_root = Mobilizon.Web.Endpoint.url()
|
||||
local_url = Endpoint.url() <> "/hello"
|
||||
local_root = Endpoint.url()
|
||||
assert url(local_url) == local_url
|
||||
assert url(local_root) == local_root
|
||||
end
|
||||
@@ -47,7 +47,7 @@ defmodule Mobilizon.Web.MediaProxyTest do
|
||||
|
||||
assert String.starts_with?(
|
||||
encoded,
|
||||
Config.get([:media_proxy, :base_url], Mobilizon.Web.Endpoint.url())
|
||||
Config.get([:media_proxy, :base_url], Endpoint.url())
|
||||
)
|
||||
|
||||
assert String.ends_with?(encoded, "/logo.png")
|
||||
@@ -84,16 +84,16 @@ defmodule Mobilizon.Web.MediaProxyTest do
|
||||
end
|
||||
|
||||
test "validates signature" do
|
||||
secret_key_base = Config.get([Mobilizon.Web.Endpoint, :secret_key_base])
|
||||
secret_key_base = Config.get([Endpoint, :secret_key_base])
|
||||
|
||||
on_exit(fn ->
|
||||
Config.put([Mobilizon.Web.Endpoint, :secret_key_base], secret_key_base)
|
||||
Config.put([Endpoint, :secret_key_base], secret_key_base)
|
||||
end)
|
||||
|
||||
encoded = url("https://pleroma.social")
|
||||
|
||||
Config.put(
|
||||
[Mobilizon.Web.Endpoint, :secret_key_base],
|
||||
[Endpoint, :secret_key_base],
|
||||
"00000000000000000000000000000000000000000000000"
|
||||
)
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ defmodule Mobilizon.UploadTest do
|
||||
|
||||
alias Mobilizon.Config
|
||||
|
||||
alias Mobilizon.Web.Upload
|
||||
alias Mobilizon.Web.{Endpoint, Upload}
|
||||
alias Mobilizon.Web.Upload.Uploader
|
||||
|
||||
describe "Storing a file with the Local uploader" do
|
||||
@@ -31,7 +31,7 @@ defmodule Mobilizon.UploadTest do
|
||||
size: 13_227
|
||||
} = data
|
||||
|
||||
assert String.starts_with?(url, Mobilizon.Web.Endpoint.url() <> "/media/")
|
||||
assert String.starts_with?(url, Endpoint.url() <> "/media/")
|
||||
end
|
||||
|
||||
test "returns a media url with configured base_url" do
|
||||
@@ -59,10 +59,10 @@ defmodule Mobilizon.UploadTest do
|
||||
filename: "an [image.jpg"
|
||||
}
|
||||
|
||||
{:ok, data} = Upload.store(file, filters: [Mobilizon.Web.Upload.Filter.Dedupe])
|
||||
{:ok, data} = Upload.store(file, filters: [Upload.Filter.Dedupe])
|
||||
|
||||
assert data.url ==
|
||||
Mobilizon.Web.Endpoint.url() <>
|
||||
Endpoint.url() <>
|
||||
"/media/590523d60d3831ec92d05cdd871078409d5780903910efec5cd35ab1b0f19d11.jpg"
|
||||
end
|
||||
|
||||
@@ -88,7 +88,7 @@ defmodule Mobilizon.UploadTest do
|
||||
filename: "an [image.jpg"
|
||||
}
|
||||
|
||||
{:ok, data} = Upload.store(file, filters: [Mobilizon.Web.Upload.Filter.Dedupe])
|
||||
{:ok, data} = Upload.store(file, filters: [Upload.Filter.Dedupe])
|
||||
assert data.content_type == "image/jpeg"
|
||||
end
|
||||
|
||||
@@ -140,7 +140,7 @@ defmodule Mobilizon.UploadTest do
|
||||
filename: "an [image.jpg"
|
||||
}
|
||||
|
||||
{:ok, data} = Upload.store(file, filters: [Mobilizon.Web.Upload.Filter.AnonymizeFilename])
|
||||
{:ok, data} = Upload.store(file, filters: [Upload.Filter.AnonymizeFilename])
|
||||
|
||||
refute data.name == "an [image.jpg"
|
||||
end
|
||||
@@ -212,7 +212,7 @@ defmodule Mobilizon.UploadTest do
|
||||
content_type: "image/jpeg"
|
||||
} = data
|
||||
|
||||
assert String.starts_with?(url, Mobilizon.Web.Endpoint.url() <> "/media/")
|
||||
assert String.starts_with?(url, Endpoint.url() <> "/media/")
|
||||
|
||||
%URI{path: "/media/" <> path} = URI.parse(url)
|
||||
{Config.get!([Uploader.Local, :uploads]) <> "/" <> path, url}
|
||||
|
||||
Reference in New Issue
Block a user