Example #1
0
        public void Diversity()
        {
            string text     = "👍";
            string expected = ":thumbsup:";
            string actual   = EmojiOne.ToShort(text);

            Assert.AreEqual(expected, actual);

            text     = "👍🏻";
            expected = ":thumbsup_tone1:";
            actual   = EmojiOne.ToShort(text);
            Assert.AreEqual(expected, actual);

            expected = $@"<img class=""emojione"" alt=""👍🏻"" title="":thumbsup_tone1:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f44d-1f3fb.png"" />";
            actual   = EmojiOne.ToImage(text);
            Assert.AreEqual(expected, actual);

            expected = @"<span class=""emojione emojione-32-diversity _1f44d-1f3fb"" title="":thumbsup_tone1:"">👍🏻</span>";
            actual   = EmojiOne.ToImage(text, sprite: true);
            Assert.AreEqual(expected, actual);

            text     = "👍🏿";
            expected = ":thumbsup_tone5:";
            actual   = EmojiOne.ToShort(text);
            Assert.AreEqual(expected, actual);

            expected = $@"<img class=""emojione"" alt=""👍🏿"" title="":thumbsup_tone5:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f44d-1f3ff.png"" />";
            actual   = EmojiOne.ToImage(text);
            Assert.AreEqual(expected, actual);

            expected = @"<span class=""emojione emojione-32-diversity _1f44d-1f3ff"" title="":thumbsup_tone5:"">👍🏿</span>";
            actual   = EmojiOne.ToImage(text, sprite: true);
            Assert.AreEqual(expected, actual);
        }
Example #2
0
        public void ToImage()
        {
            // to image
            string text     = "Hello world! 😄 :smile:";
            string expected = $@"Hello world! <img class=""emojione"" alt=""😄"" title="":smile:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f604.png"" /> <img class=""emojione"" alt=""😄"" title="":smile:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f604.png"" />";
            string actual   = EmojiOne.ToImage(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=""👽"" title="":alien:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f47d.png"" /> is <img class=""emojione"" alt=""👽"" title="":alien:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f47d.png"" /> and 저 is not <img class=""emojione"" alt=""👽"" title="":alien:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f47d.png"" /> or <img class=""emojione"" alt=""👽"" title="":alien:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f47d.png"" /> also :randomy: is not emoji";
            actual   = EmojiOne.ToImage(text);
            Assert.AreEqual(expected, actual);

            // single shortname conversion
            text     = ":snail:";
            expected = $@"<img class=""emojione"" alt=""🐌"" title="":snail:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f40c.png"" />";
            actual   = EmojiOne.ToImage(text);
            Assert.AreEqual(expected, actual);

            // shortname shares a colon
            text     = ":invalid:snail:";
            expected = $@":invalid<img class=""emojione"" alt=""🐌"" title="":snail:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f40c.png"" />";
            actual   = EmojiOne.ToImage(text);
            Assert.AreEqual(expected, actual);

            // single unicode character conversion
            text     = "🐌";
            expected = $@"<img class=""emojione"" alt=""🐌"" title="":snail:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f40c.png"" />";
            actual   = EmojiOne.ToImage(text);
            Assert.AreEqual(expected, actual);

            // mixed unicode, shortname and ascii conversion
            text     = "😄 :smile: :D";
            expected = $@"<img class=""emojione"" alt=""😄"" title="":smile:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f604.png"" /> <img class=""emojione"" alt=""😄"" title="":smile:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f604.png"" /> <img class=""emojione"" alt=""😃"" title="":smiley:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f603.png"" />";
            actual   = EmojiOne.ToImage(text, ascii: true);
            Assert.AreEqual(expected, actual);

            // shortname alt
            text     = "😄";
            expected = $@"<img class=""emojione"" alt="":smile:"" title="":smile:"" src=""{EmojiOne.ImagePath}{EmojiOne.EmojiSize}/1f604.png"" />";
            actual   = EmojiOne.ToImage(text, unicodeAlt: false);
            Assert.AreEqual(expected, actual);

            // sprite
            text     = "😄";
            expected = @"<span class=""emojione emojione-32-people _1f604"" title="":smile:"">😄</span>";
            actual   = EmojiOne.ToImage(text, sprite: true);
            Assert.AreEqual(expected, actual);

            // sprite nature
            text     = "🐱";
            expected = @"<span class=""emojione emojione-32-nature _1f431"" title="":cat:"">🐱</span>";
            actual   = EmojiOne.ToImage(text, sprite: true);
            Assert.AreEqual(expected, actual);
        }
Example #3
0
        public void ToImage()
        {
            // 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}"" /> <img class=""emojione"" alt=""😄"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f604.png{EmojiOne.CacheBustParam}"" />";
            string actual   = EmojiOne.ToImage(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 <img class=""emojione"" alt=""👽"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f47d.png{EmojiOne.CacheBustParam}"" /> 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.ToImage(text);
            Assert.AreEqual(expected, actual);

            // single shortname conversion
            text     = ":snail:";
            expected = $@"<img class=""emojione"" alt=""🐌"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f40c.png{EmojiOne.CacheBustParam}"" />";
            actual   = EmojiOne.ToImage(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.ToImage(text);
            Assert.AreEqual(expected, actual);

            // single unicode character conversion
            text     = "🐌";
            expected = $@"<img class=""emojione"" alt=""🐌"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f40c.png{EmojiOne.CacheBustParam}"" />";
            actual   = EmojiOne.ToImage(text);
            Assert.AreEqual(expected, actual);

            // mixed unicode, shortname and ascii conversion
            text     = "😄 :smile: :)";
            expected = $@"<img class=""emojione"" alt=""😄"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f604.png{EmojiOne.CacheBustParam}"" /> <img class=""emojione"" alt=""😄"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f604.png{EmojiOne.CacheBustParam}"" /> <img class=""emojione"" alt=""🙂"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f642.png{EmojiOne.CacheBustParam}"" />";
            actual   = EmojiOne.ToImage(text, ascii: true);
            Assert.AreEqual(expected, actual);

            // shortname alt
            text     = "😄";
            expected = $@"<img class=""emojione"" alt="":smile:"" src=""//cdn.jsdelivr.net/emojione/assets/png/1f604.png{EmojiOne.CacheBustParam}"" />";
            actual   = EmojiOne.ToImage(text, unicodeAlt: false);
            Assert.AreEqual(expected, actual);

            // svg conversion
            text     = "😄";
            expected = $@"<object class=""emojione"" data=""//cdn.jsdelivr.net/emojione/assets/svg/1f604.svg{EmojiOne.CacheBustParam}"" type=""image/svg+xml"" standby=""😄"">😄</object>";
            actual   = EmojiOne.ToImage(text, svg: true);
            Assert.AreEqual(expected, actual);

            // png sprite
            text     = "😄";
            expected = @"<span class=""emojione emojione-1f604"" title="":smile:"">😄</span>";
            actual   = EmojiOne.ToImage(text, sprites: true);
            Assert.AreEqual(expected, actual);

            // svg sprite
            text     = "😄";
            expected = @"<svg class=""emojione""><description>😄</description><use xlink:href=""./../assets/sprites/emojione.sprites.svg#emoji-1f604""></use></svg>";
            actual   = EmojiOne.ToImage(text, svg: true, sprites: true);
            Assert.AreEqual(expected, actual);

            // emojione-awesome
            text     = "😄";
            expected = @"<i class=""e1a-smile""></i>";
            actual   = EmojiOne.ToImage(text, awesome: true);
            Assert.AreEqual(expected, actual);
        }