Update clear_config macro

This commit is contained in:
Roman Chvanikov 2020-08-05 17:46:14 +03:00
parent 6f60ac9f41
commit 97b5701449
2 changed files with 5 additions and 8 deletions

View file

@ -127,10 +127,7 @@ test "doesn't do anything if rum disabled" do
:ok
end
setup do
Pleroma.Config.get(:i_am_aware_this_may_cause_data_loss, 42) |> IO.inspect()
clear_config([:i_am_aware_this_may_cause_data_loss, :disable_migration_check])
end
setup do: clear_config([:i_am_aware_this_may_cause_data_loss, :disable_migration_check])
test "raises if it detects unapplied migrations" do
assert_raise Pleroma.ApplicationRequirements.VerifyError,

View file

@ -17,16 +17,16 @@ defmacro clear_config(config_path) do
defmacro clear_config(config_path, do: yield) do
quote do
initial_setting = Config.get(unquote(config_path), :__clear_config_absent__)
initial_setting = Config.fetch(unquote(config_path))
unquote(yield)
on_exit(fn ->
case initial_setting do
:__clear_config_absent__ ->
:error ->
Config.delete(unquote(config_path))
_ ->
Config.put(unquote(config_path), initial_setting)
{:ok, value} ->
Config.put(unquote(config_path), value)
end
end)