instance.reachable?: Limit to binary input
authorHaelwenn (lanodan) Monnier <contact@hacktivis.me>
Mon, 7 Dec 2020 20:18:51 +0000 (21:18 +0100)
committerHaelwenn (lanodan) Monnier <contact@hacktivis.me>
Mon, 7 Dec 2020 20:20:44 +0000 (21:20 +0100)
lib/pleroma/instances/instance.ex
test/pleroma/instances_test.exs

index c9ca3aac717ec63546d450216109d36a904ffbdf..2e1696fe217a1a401d3c649071fed8328df184ad 100644 (file)
@@ -77,7 +77,7 @@ defmodule Pleroma.Instances.Instance do
     )
   end
 
-  def reachable?(_), do: true
+  def reachable?(url_or_host) when is_binary(url_or_host), do: true
 
   def set_reachable(url_or_host) when is_binary(url_or_host) do
     with host <- host(url_or_host),
index d2618025c0bbdde67b4d25823790eb4963d7c71e..5d0ce623758922d279324b4957d924909e377a92 100644 (file)
@@ -32,9 +32,9 @@ defmodule Pleroma.InstancesTest do
       assert Instances.reachable?(URI.parse(url).host)
     end
 
-    test "returns true on non-binary input" do
-      assert Instances.reachable?(nil)
-      assert Instances.reachable?(1)
+    test "raises FunctionClauseError exception on non-binary input" do
+      assert_raise FunctionClauseError, fn -> Instances.reachable?(nil) end
+      assert_raise FunctionClauseError, fn -> Instances.reachable?(1) end
     end
   end