giant massive dep upgrade and dialyxir-found error emporium (#371)
[akkoma] / test / pleroma / web / plugs / remote_ip_test.exs
index 0bdb4c168757618578be6980d2ae0e3b34905d67..b77fa25f2f5465e82e1b16857fe069aba2250f1f 100644 (file)
@@ -1,5 +1,5 @@
 # Pleroma: A lightweight social networking server
-# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.Plugs.RemoteIpTest do
@@ -10,28 +10,32 @@ defmodule Pleroma.Web.Plugs.RemoteIpTest do
 
   import Pleroma.Tests.Helpers, only: [clear_config: 2]
 
-  setup do:
-          clear_config(RemoteIp,
-            enabled: true,
-            headers: ["x-forwarded-for"],
-            proxies: [],
-            reserved: [
-              "127.0.0.0/8",
-              "::1/128",
-              "fc00::/7",
-              "10.0.0.0/8",
-              "172.16.0.0/12",
-              "192.168.0.0/16"
-            ]
-          )
+  setup do
+    clear_config([RemoteIp, :enabled], true)
+    clear_config([RemoteIp, :headers], ["x-forwarded-for"])
+    clear_config([RemoteIp, :proxies], [])
+
+    clear_config(
+      [RemoteIp, :reserved],
+      [
+        "127.0.0.0/8",
+        "::1/128",
+        "fc00::/7",
+        "10.0.0.0/8",
+        "172.16.0.0/12",
+        "192.168.0.0/16"
+      ]
+    )
+  end
 
   test "disabled" do
-    Pleroma.Config.put(RemoteIp, enabled: false)
+    clear_config([RemoteIp, :enabled], false)
 
     %{remote_ip: remote_ip} = conn(:get, "/")
 
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("x-forwarded-for", "1.1.1.1")
       |> RemoteIp.call(nil)
 
@@ -40,7 +44,8 @@ defmodule Pleroma.Web.Plugs.RemoteIpTest do
 
   test "enabled" do
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("x-forwarded-for", "1.1.1.1")
       |> RemoteIp.call(nil)
 
@@ -48,17 +53,20 @@ defmodule Pleroma.Web.Plugs.RemoteIpTest do
   end
 
   test "custom headers" do
-    Pleroma.Config.put(RemoteIp, enabled: true, headers: ["cf-connecting-ip"])
+    clear_config([RemoteIp, :enabled], true)
+    clear_config([RemoteIp, :headers], ["cf-connecting-ip"])
 
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("x-forwarded-for", "1.1.1.1")
       |> RemoteIp.call(nil)
 
     refute conn.remote_ip == {1, 1, 1, 1}
 
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("cf-connecting-ip", "1.1.1.1")
       |> RemoteIp.call(nil)
 
@@ -67,16 +75,18 @@ defmodule Pleroma.Web.Plugs.RemoteIpTest do
 
   test "custom proxies" do
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("x-forwarded-for", "173.245.48.1, 1.1.1.1, 173.245.48.2")
       |> RemoteIp.call(nil)
 
     refute conn.remote_ip == {1, 1, 1, 1}
 
-    Pleroma.Config.put([RemoteIp, :proxies], ["173.245.48.0/20"])
+    clear_config([RemoteIp, :proxies], ["173.245.48.0/20"])
 
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("x-forwarded-for", "173.245.48.1, 1.1.1.1, 173.245.48.2")
       |> RemoteIp.call(nil)
 
@@ -84,10 +94,11 @@ defmodule Pleroma.Web.Plugs.RemoteIpTest do
   end
 
   test "proxies set without CIDR format" do
-    Pleroma.Config.put([RemoteIp, :proxies], ["173.245.48.1"])
+    clear_config([RemoteIp, :proxies], ["173.245.48.1"])
 
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("x-forwarded-for", "173.245.48.1, 1.1.1.1")
       |> RemoteIp.call(nil)
 
@@ -95,11 +106,12 @@ defmodule Pleroma.Web.Plugs.RemoteIpTest do
   end
 
   test "proxies set `nonsensical` CIDR" do
-    Pleroma.Config.put([RemoteIp, :reserved], ["127.0.0.0/8"])
-    Pleroma.Config.put([RemoteIp, :proxies], ["10.0.0.3/24"])
+    clear_config([RemoteIp, :reserved], ["127.0.0.0/8"])
+    clear_config([RemoteIp, :proxies], ["10.0.0.3/24"])
 
     conn =
-      conn(:get, "/")
+      :get
+      |> conn("/")
       |> put_req_header("x-forwarded-for", "10.0.0.3, 1.1.1.1")
       |> RemoteIp.call(nil)