Load an emoji.txt specific to the test env
authorMark Felder <feld@feld.me>
Wed, 3 Feb 2021 22:36:45 +0000 (16:36 -0600)
committerMark Felder <feld@feld.me>
Wed, 3 Feb 2021 22:40:59 +0000 (16:40 -0600)
config/emoji.txt
lib/pleroma/emoji/loader.ex
test/config/emoji.txt [new file with mode: 0644]

index a2c5add2e873728aef8e878a04bc74d4a50c4e03..52b714ee5d28e0ad3c90c40e1531d0aff3cdc6d8 100644 (file)
@@ -1,4 +1,3 @@
 firefox, /emoji/Firefox.gif, Gif,Fun
 blank, /emoji/blank.png, Fun
 dinosaur, /emoji/dino walking.gif, Gif
-external_emoji, https://example.com/emoji.png
index 028cf5ea86487a9802ddde3eb002cc5d0929b90d..cc25dabf926255aa395ffd5fe81555e404d4b987 100644 (file)
@@ -77,10 +77,19 @@ defmodule Pleroma.Emoji.Loader do
     # it should run even if there are no emoji packs
     shortcode_globs = Config.get([:emoji, :shortcode_globs], [])
 
+    # for testing emoji.txt entries we do not want exposed in normal operation
+    test_emoji =
+      if Mix.env() == :test do
+        load_from_file("test/config/emoji.txt", emoji_groups)
+      else
+        []
+      end
+
     emojis_txt =
       (load_from_file("config/emoji.txt", emoji_groups) ++
          load_from_file("config/custom_emoji.txt", emoji_groups) ++
-         load_from_globs(shortcode_globs, emoji_groups))
+         load_from_globs(shortcode_globs, emoji_groups) ++
+         test_emoji)
       |> Enum.reject(fn value -> value == nil end)
 
     Enum.map(emojis ++ emojis_txt, &prepare_emoji/1)
diff --git a/test/config/emoji.txt b/test/config/emoji.txt
new file mode 100644 (file)
index 0000000..14dd0c3
--- /dev/null
@@ -0,0 +1 @@
+external_emoji, https://example.com/emoji.png