@spec is_module_name?(String.t()) :: boolean()
def is_module_name?(string) do
- Regex.match?(~r/^(Pleroma|Phoenix|Tesla)\./, string) or string in ["Oban", "Ueberauth"]
+ Regex.match?(~r/^(Pleroma|Phoenix|Tesla|Quack)\./, string) or
+ string in ["Oban", "Ueberauth", "ExSyslogger"]
end
defp do_eval(entity) do
conn =
post(conn, "/api/pleroma/admin/config", %{
configs: [
- %{group: config.group, key: config.key, value: [":console"]}
+ %{
+ group: config.group,
+ key: config.key,
+ value: [":console", %{"tuple" => ["ExSyslogger", ":ex_syslogger"]}]
+ }
]
})
%{
"group" => ":logger",
"key" => ":backends",
- "value" => [":console"]
+ "value" => [
+ ":console",
+ %{"tuple" => ["ExSyslogger", ":ex_syslogger"]}
+ ]
}
]
}
- assert Application.get_env(:logger, :backends) == [:console]
+ assert Application.get_env(:logger, :backends) == [
+ :console,
+ {ExSyslogger, :ex_syslogger}
+ ]
ExUnit.CaptureLog.capture_log(fn ->
require Logger
assert Config.from_binary(binary) == Tesla.Adapter.Hackney
end
+ test "ExSyslogger module" do
+ binary = Config.transform("ExSyslogger")
+ assert binary == :erlang.term_to_binary(ExSyslogger)
+ assert Config.from_binary(binary) == ExSyslogger
+ end
+
+ test "Quack.Logger module" do
+ binary = Config.transform("Quack.Logger")
+ assert binary == :erlang.term_to_binary(Quack.Logger)
+ assert Config.from_binary(binary) == Quack.Logger
+ end
+
test "sigil" do
binary = Config.transform("~r[comp[lL][aA][iI][nN]er]")
assert binary == :erlang.term_to_binary(~r/comp[lL][aA][iI][nN]er/)