summaryrefslogtreecommitdiff
path: root/test/config_test.exs
diff options
context:
space:
mode:
authorhref <href@random.sh>2018-11-06 16:00:48 +0100
committerhref <href@random.sh>2018-11-06 16:00:48 +0100
commit7d328c658da69ec236d10fa89d23f2a6886b3205 (patch)
treeef0f639fe4c57cf9160d0e69e2918461ecf9a008 /test/config_test.exs
parent36ca3c1b3ec814609d14815a672239a31b1e0ec5 (diff)
downloadpleroma-7d328c658da69ec236d10fa89d23f2a6886b3205.tar.gz
pleroma-7d328c658da69ec236d10fa89d23f2a6886b3205.zip
Small wrapper module around Application.get_env/put_env
Same API as the old Pleroma.Config
Diffstat (limited to 'test/config_test.exs')
-rw-r--r--test/config_test.exs39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/config_test.exs b/test/config_test.exs
new file mode 100644
index 000000000..32d5cc90c
--- /dev/null
+++ b/test/config_test.exs
@@ -0,0 +1,39 @@
+defmodule Pleroma.ConfigTest do
+ use ExUnit.Case
+
+ test "get/1 with an atom" do
+ assert Pleroma.Config.get(:instance) == Application.get_env(:pleroma, :instance)
+ assert Pleroma.Config.get(:azertyuiop) == nil
+ end
+
+ test "get/1 with a list of keys" do
+ assert Pleroma.Config.get([:instance, :public]) ==
+ Keyword.get(Application.get_env(:pleroma, :instance), :public)
+
+ assert Pleroma.Config.get([Pleroma.Web.Endpoint, :render_errors, :view]) ==
+ get_in(
+ Application.get_env(
+ :pleroma,
+ Pleroma.Web.Endpoint
+ ),
+ [:render_errors, :view]
+ )
+
+ assert Pleroma.Config.get([:azerty, :uiop]) == nil
+ end
+
+ test "put/2 with a key" do
+ Pleroma.Config.put(:config_test, true)
+
+ assert Pleroma.Config.get(:config_test) == true
+ end
+
+ test "put/2 with a list of keys" do
+ Pleroma.Config.put([:instance, :config_test], true)
+ Pleroma.Config.put([:instance, :config_nested_test], [])
+ Pleroma.Config.put([:instance, :config_nested_test, :x], true)
+
+ assert Pleroma.Config.get([:instance, :config_test]) == true
+ assert Pleroma.Config.get([:instance, :config_nested_test, :x]) == true
+ end
+end