diff --git a/tdutils/test/emoji.cpp b/tdutils/test/emoji.cpp index beb130047..a8f22bbeb 100644 --- a/tdutils/test/emoji.cpp +++ b/tdutils/test/emoji.cpp @@ -7,7 +7,7 @@ #include "td/utils/emoji.h" #include "td/utils/tests.h" -TEST(Misc, is_emoji) { +TEST(Emoji, is_emoji) { ASSERT_TRUE(td::is_emoji("👩🏼‍❤‍💋‍👩🏻")); ASSERT_TRUE(td::is_emoji("👩🏼‍❤️‍💋‍👩🏻")); ASSERT_TRUE(!td::is_emoji("👩🏼‍❤️️‍💋‍👩🏻")); @@ -27,3 +27,26 @@ TEST(Misc, is_emoji) { ASSERT_TRUE(td::is_emoji("🎄")); ASSERT_TRUE(td::is_emoji("🧑‍🎄")); } + +static void test_remove_emoji_modifiers(td::string emoji, const td::string &result) { + ASSERT_STREQ(result, td::remove_emoji_modifiers(emoji)); + td::remove_emoji_modifiers_in_place(emoji); + ASSERT_STREQ(result, emoji); + ASSERT_STREQ(emoji, td::remove_emoji_modifiers(emoji)); +} + +TEST(Emoji, remove_emoji_modifiers) { + test_remove_emoji_modifiers("", ""); + test_remove_emoji_modifiers("👩🏼‍❤‍💋‍👩🏻", "👩‍❤‍💋‍👩"); + test_remove_emoji_modifiers("👩🏼‍❤️‍💋‍👩🏻", "👩‍❤‍💋‍👩"); + test_remove_emoji_modifiers("⌚", "⌚"); + test_remove_emoji_modifiers("↔", "↔"); + test_remove_emoji_modifiers("🪗", "🪗"); + test_remove_emoji_modifiers("2️⃣", "2⃣"); + test_remove_emoji_modifiers("2⃣", "2⃣"); + test_remove_emoji_modifiers("❤️", "❤"); + test_remove_emoji_modifiers("❤", "❤"); + test_remove_emoji_modifiers("⌚", "⌚"); + test_remove_emoji_modifiers("🎄", "🎄"); + test_remove_emoji_modifiers("🧑‍🎄", "🧑‍🎄"); +}