aboutsummaryrefslogtreecommitdiff
path: root/test/tasks
diff options
context:
space:
mode:
authorAlex S <alex.strizhakov@gmail.com>2019-09-29 11:17:38 +0300
committerAlexander Strizhakov <alex.strizhakov@gmail.com>2020-01-10 15:51:59 +0300
commit2753285b7722fdb47f0ebb2180e997cf72f65d1a (patch)
treeb9c2db8135cf814b8a61825100158eaee4855dca /test/tasks
parente118d639a02166a2e04dd0ba7dbc38ba5d21984e (diff)
downloadpleroma-2753285b7722fdb47f0ebb2180e997cf72f65d1a.tar.gz
config editing through database
Diffstat (limited to 'test/tasks')
-rw-r--r--test/tasks/config_test.exs40
1 files changed, 22 insertions, 18 deletions
diff --git a/test/tasks/config_test.exs b/test/tasks/config_test.exs
index fab9d6e9a..055f678b9 100644
--- a/test/tasks/config_test.exs
+++ b/test/tasks/config_test.exs
@@ -9,16 +9,14 @@ defmodule Mix.Tasks.Pleroma.ConfigTest do
setup_all do
Mix.shell(Mix.Shell.Process)
- temp_file = "config/temp.exported_from_db.secret.exs"
on_exit(fn ->
Mix.shell(Mix.Shell.IO)
Application.delete_env(:pleroma, :first_setting)
Application.delete_env(:pleroma, :second_setting)
- :ok = File.rm(temp_file)
end)
- {:ok, temp_file: temp_file}
+ :ok
end
clear_config_all([:instance, :dynamic_configuration]) do
@@ -28,38 +26,44 @@ defmodule Mix.Tasks.Pleroma.ConfigTest do
test "settings are migrated to db" do
assert Repo.all(Config) == []
- Application.put_env(:pleroma, :first_setting, key: "value", key2: [Pleroma.Repo])
- Application.put_env(:pleroma, :second_setting, key: "value2", key2: [Pleroma.Activity])
+ Application.put_env(:pleroma, :first_setting, key: "value", key2: [Repo])
+ Application.put_env(:pleroma, :second_setting, key: "value2", key2: ["Activity"])
Mix.Tasks.Pleroma.Config.run(["migrate_to_db"])
- first_db = Config.get_by_params(%{group: "pleroma", key: ":first_setting"})
- second_db = Config.get_by_params(%{group: "pleroma", key: ":second_setting"})
- refute Config.get_by_params(%{group: "pleroma", key: "Pleroma.Repo"})
+ config1 = Config.get_by_params(%{group: ":pleroma", key: ":first_setting"})
+ config2 = Config.get_by_params(%{group: ":pleroma", key: ":second_setting"})
+ refute Config.get_by_params(%{group: ":pleroma", key: "Pleroma.Repo"})
- assert Config.from_binary(first_db.value) == [key: "value", key2: [Pleroma.Repo]]
- assert Config.from_binary(second_db.value) == [key: "value2", key2: [Pleroma.Activity]]
+ assert Config.from_binary(config1.value) == [key: "value", key2: [Repo]]
+ assert Config.from_binary(config2.value) == [key: "value2", key2: ["Activity"]]
end
- test "settings are migrated to file and deleted from db", %{temp_file: temp_file} do
+ test "settings are migrated to file and deleted from db" do
+ env = "temp"
+ config_file = "config/#{env}.exported_from_db.secret.exs"
+
+ on_exit(fn ->
+ :ok = File.rm(config_file)
+ end)
+
Config.create(%{
- group: "pleroma",
+ group: ":pleroma",
key: ":setting_first",
- value: [key: "value", key2: [Pleroma.Activity]]
+ value: [key: "value", key2: ["Activity"]]
})
Config.create(%{
- group: "pleroma",
+ group: ":pleroma",
key: ":setting_second",
- value: [key: "valu2", key2: [Pleroma.Repo]]
+ value: [key: "value2", key2: [Repo]]
})
- Mix.Tasks.Pleroma.Config.run(["migrate_from_db", "temp", "true"])
+ Mix.Tasks.Pleroma.Config.run(["migrate_from_db", "--env", env, "-d"])
assert Repo.all(Config) == []
- assert File.exists?(temp_file)
- {:ok, file} = File.read(temp_file)
+ file = File.read!(config_file)
assert file =~ "config :pleroma, :setting_first,"
assert file =~ "config :pleroma, :setting_second,"
end