Fix multipoint shortcode bug (#4387)

* Fix multipoint shortcode bug

* Added testcase for composite emoji shortcode
This commit is contained in:
Ondřej Hruška 2017-07-27 01:02:15 +02:00 committed by Eugen Rochko
parent 994d948c39
commit f49339ca9c
2 changed files with 6 additions and 1 deletions

View file

@ -32,7 +32,7 @@ class Emoji
def codepoint_to_unicode(codepoint) def codepoint_to_unicode(codepoint)
if codepoint.include?('-') if codepoint.include?('-')
codepoint.split('-').map(&:hex).pack('U') codepoint.split('-').map(&:hex).pack('U*')
else else
[codepoint.hex].pack('U') [codepoint.hex].pack('U')
end end

View file

@ -7,6 +7,11 @@ RSpec.describe EmojiHelper, type: :helper do
expect(emojify(text)).to eq '📖 Book' expect(emojify(text)).to eq '📖 Book'
end end
it 'converts composite emoji shortcodes to unicode' do
text = ':couple_ww:'
expect(emojify(text)).to eq '👩❤👩'
end
it 'does not convert shortcodes that are part of a string into unicode' do it 'does not convert shortcodes that are part of a string into unicode' do
text = ':see_no_evil::hear_no_evil::speak_no_evil:' text = ':see_no_evil::hear_no_evil::speak_no_evil:'
expect(emojify(text)).to eq text expect(emojify(text)).to eq text