예제 #1
0
        public void Version40Emoji()
        {
            // test that new emoji from v4.0 works
            string text     = ":cold_face:";
            string expected = $@"<img class=""emojione"" alt=""🥶"" title="":cold_face:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f976.png"" />";
            string actual   = EmojiOne.ShortnameToImage(text);

            Assert.AreEqual(expected, actual);

            text     = "🧁";
            expected = ":cupcake:";
            actual   = EmojiOne.ToShort(text);
            Assert.AreEqual(expected, actual);

            text     = ":superhero:";
            expected = "🦸";
            actual   = EmojiOne.ShortnameToUnicode(text);
            Assert.AreEqual(expected, actual);
        }
예제 #2
0
        public void Version224Emoji()
        {
            // test that new emoji from v2.2.4 works
            string text     = ":first_place:";
            string expected = $@"<img class=""emojione"" alt=""🥇"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f947.png{EmojiOne.CacheBustParam}"" />";
            string actual   = EmojiOne.ShortnameToImage(text);

            Assert.AreEqual(expected, actual);

            text     = ":avocado:";
            expected = "🥑";
            actual   = EmojiOne.ShortnameToUnicode(text);
            Assert.AreEqual(expected, actual);

            text     = "🖤";
            expected = ":black_heart:";
            actual   = EmojiOne.ToShort(text);
            Assert.AreEqual(expected, actual);
        }
예제 #3
0
        public void Version224Emoji()
        {
            // test that new emoji from v2.2.4 works
            string text     = ":first_place:";
            string expected = $@"<img class=""emojione"" alt=""🥇"" title="":first_place:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f947.png"" />";
            string actual   = EmojiOne.ShortnameToImage(text);

            Assert.AreEqual(expected, actual);

            text     = ":avocado:";
            expected = "🥑";
            actual   = EmojiOne.ShortnameToUnicode(text);
            Assert.AreEqual(expected, actual);

            text     = "🖤";
            expected = ":black_heart:";
            actual   = EmojiOne.ToShort(text);
            Assert.AreEqual(expected, actual);
        }
예제 #4
0
        public void ShortnameToImage()
        {
            // shortname to image
            string text     = "Hello world! 😄 :smile:";
            string expected = $@"Hello world! 😄 <img class=""emojione"" alt=""😄"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f604.png{EmojiOne.CacheBustParam}"" />";
            string actual   = EmojiOne.ShortnameToImage(text);

            Assert.AreEqual(expected, actual);

            // shortname at start of sentence with apostrophe
            text     = ":snail:'s are cool!";
            expected = $@"<img class=""emojione"" alt=""🐌"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f40c.png{EmojiOne.CacheBustParam}"" />'s are cool!";
            actual   = EmojiOne.ShortnameToImage(text);
            Assert.AreEqual(expected, actual);

            // shortname shares a colon
            text     = ":invalid:snail:";
            expected = $@":invalid<img class=""emojione"" alt=""🐌"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f40c.png{EmojiOne.CacheBustParam}"" />";
            actual   = EmojiOne.ShortnameToImage(text);
            Assert.AreEqual(expected, actual);

            // mixed ascii, regular unicode and duplicate emoji
            text     = ":alien: is 👽 and 저 is not :alien: or :alien: also :randomy: is not emoji";
            expected = $@"<img class=""emojione"" alt=""👽"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f47d.png{EmojiOne.CacheBustParam}"" /> is 👽 and 저 is not <img class=""emojione"" alt=""👽"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f47d.png{EmojiOne.CacheBustParam}"" /> or <img class=""emojione"" alt=""👽"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f47d.png{EmojiOne.CacheBustParam}"" /> also :randomy: is not emoji";
            actual   = EmojiOne.ShortnameToImage(text);
            Assert.AreEqual(expected, actual);

            // multiline emoji string
            text     = ":dancer:\n:dancer:";
            expected = $"<img class=\"emojione\" alt=\"💃\" src=\"//cdn.jsdelivr.net/emojione/assets/png/1f483.png{EmojiOne.CacheBustParam}\" />\n<img class=\"emojione\" alt=\"💃\" src=\"//cdn.jsdelivr.net/emojione/assets/png/1f483.png{EmojiOne.CacheBustParam}\" />";
            actual   = EmojiOne.ShortnameToImage(text);
            Assert.AreEqual(expected, actual);

            // triple emoji string
            text     = ":dancer::dancer::alien:";
            expected = $@"<img class=""emojione"" alt=""💃"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f483.png{EmojiOne.CacheBustParam}"" /><img class=""emojione"" alt=""💃"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f483.png{EmojiOne.CacheBustParam}"" /><img class=""emojione"" alt=""👽"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f47d.png{EmojiOne.CacheBustParam}"" />";
            actual   = EmojiOne.ShortnameToImage(text);
            Assert.AreEqual(expected, actual);
        }