diff options
author | Alexander Strizhakov <alex.strizhakov@gmail.com> | 2020-01-17 11:45:44 +0300 |
---|---|---|
committer | Alexander Strizhakov <alex.strizhakov@gmail.com> | 2020-01-17 11:45:44 +0300 |
commit | 60ba2339a244290f7353e8026032b1a5d185227c (patch) | |
tree | 9ae4ffdc87b7acd8c2ab093d6363545604a5501d /test/config | |
parent | 29155137fdae15fccfaa68fb9c954e98078ce0c4 (diff) | |
download | pleroma-60ba2339a244290f7353e8026032b1a5d185227c.tar.gz |
saving to DB only added by user settings
Diffstat (limited to 'test/config')
-rw-r--r-- | test/config/config_db_test.exs | 25 | ||||
-rw-r--r-- | test/config/transfer_task_test.exs | 29 |
2 files changed, 52 insertions, 2 deletions
diff --git a/test/config/config_db_test.exs b/test/config/config_db_test.exs index 096df9203..6f76008e6 100644 --- a/test/config/config_db_test.exs +++ b/test/config/config_db_test.exs @@ -15,8 +15,8 @@ defmodule Pleroma.ConfigDBTest do end test "create/1" do - {:ok, config} = ConfigDB.create(%{group: "pleroma", key: "some_key", value: "some_value"}) - assert config == ConfigDB.get_by_params(%{group: "pleroma", key: "some_key"}) + {:ok, config} = ConfigDB.create(%{group: ":pleroma", key: ":some_key", value: "some_value"}) + assert config == ConfigDB.get_by_params(%{group: ":pleroma", key: ":some_key"}) end test "update/1" do @@ -26,6 +26,27 @@ defmodule Pleroma.ConfigDBTest do assert loaded == updated end + test "get_all_as_keyword/0" do + insert(:config) + insert(:config, group: ":quack", key: ":level", value: ConfigDB.to_binary(:info)) + insert(:config, group: ":quack", key: ":meta", value: ConfigDB.to_binary([:none])) + + insert(:config, + group: ":quack", + key: ":webhook_url", + value: ConfigDB.to_binary("https://hooks.slack.com/services/KEY/some_val") + ) + + assert [ + pleroma: [{_, %{another: _, another_key: _}}], + quack: [ + level: :info, + meta: [:none], + webhook_url: "https://hooks.slack.com/services/KEY/some_val" + ] + ] = ConfigDB.get_all_as_keyword() + end + describe "update_or_create/1" do test "common" do config = insert(:config) diff --git a/test/config/transfer_task_test.exs b/test/config/transfer_task_test.exs index 89de93ca3..c3c4ef674 100644 --- a/test/config/transfer_task_test.exs +++ b/test/config/transfer_task_test.exs @@ -47,6 +47,35 @@ defmodule Pleroma.Config.TransferTaskTest do end) end + test "transfer config values for 1 group and some keys" do + level = Application.get_env(:quack, :level) + meta = Application.get_env(:quack, :meta) + + ConfigDB.create(%{ + group: ":quack", + key: ":level", + value: :info + }) + + ConfigDB.create(%{ + group: ":quack", + key: ":meta", + value: [:none] + }) + + Pleroma.Config.TransferTask.start_link([]) + + assert Application.get_env(:quack, :level) == :info + assert Application.get_env(:quack, :meta) == [:none] + default = Pleroma.Config.Holder.config(:quack, :webhook_url) + assert Application.get_env(:quack, :webhook_url) == default + + on_exit(fn -> + Application.put_env(:quack, :level, level) + Application.put_env(:quack, :meta, meta) + end) + end + test "non existing atom" do ConfigDB.create(%{ group: ":pleroma", |