Emoji: Also accept regional indicators
[akkoma] / test / pleroma / emoji_test.exs
index 1dd3c58c6c2a01216c4819234bb343008286fcf1..9cfd7b46b3d93ca14c98294e445085dce2357259 100644 (file)
@@ -9,8 +9,22 @@ defmodule Pleroma.EmojiTest do
   describe "is_unicode_emoji?/1" do
     test "tells if a string is an unicode emoji" do
       refute Emoji.is_unicode_emoji?("X")
-      assert Emoji.is_unicode_emoji?("☂")
+      refute Emoji.is_unicode_emoji?("ね")
+
+      # Only accept fully-qualified (RGI) emoji
+      # See http://www.unicode.org/reports/tr51/
+      refute Emoji.is_unicode_emoji?("❤")
+      refute Emoji.is_unicode_emoji?("☂")
+
       assert Emoji.is_unicode_emoji?("🥺")
+      assert Emoji.is_unicode_emoji?("🤰")
+      assert Emoji.is_unicode_emoji?("❤️")
+      assert Emoji.is_unicode_emoji?("🏳️‍⚧️")
+
+      # Additionally, we accept regional indicators.
+      assert Emoji.is_unicode_emoji?("🇵")
+      assert Emoji.is_unicode_emoji?("🇴")
+      assert Emoji.is_unicode_emoji?("🇬")
     end
   end