add nil clause for Formatter.get_emoji/1 to return an empty result
authorThurloat <thurloat@gmail.com>
Fri, 31 Aug 2018 17:28:39 +0000 (14:28 -0300)
committerThurloat <thurloat@gmail.com>
Fri, 31 Aug 2018 17:29:23 +0000 (14:29 -0300)
lib/pleroma/formatter.ex
test/formatter_test.exs

index cf2944c38fffa668ba6526dfd415af9ea10458ef..fc2c643daef7983e221cf48dd466611740c9d6d0 100644 (file)
@@ -157,6 +157,8 @@ defmodule Pleroma.Formatter do
     end)
   end
 
+  def get_emoji(nil), do: []
+
   def get_emoji(text) do
     Enum.filter(@emoji, fn {emoji, _} -> String.contains?(text, ":#{emoji}:") end)
   end
index 95558089bd784f2720b978eafa41040d2dd1e243..4e27efe0685a58f015f1a77125a0496945944ce5 100644 (file)
@@ -199,4 +199,14 @@ defmodule Pleroma.FormatterTest do
 
     assert Formatter.get_emoji(text) == [{"moominmamma", "/finmoji/128px/moominmamma-128.png"}]
   end
+
+  test "it returns a nice empty result when no emojis are present" do
+    text = "I love moominamma"
+    assert Formatter.get_emoji(text) == []
+  end
+
+  test "it doesn't die when text is absent" do
+    text = nil
+    assert Formatter.get_emoji(text) == []
+  end
 end