diff options
author | David Yip <yipdw@member.fsf.org> | 2017-10-16 09:23:59 -0500 |
---|---|---|
committer | David Yip <yipdw@member.fsf.org> | 2017-10-16 09:23:59 -0500 |
commit | dbb1fce94dbd877d795898933ca344359f9b74c1 (patch) | |
tree | 06ab5f2ae7714b41aa9e5cc19ac8c234e0f394be /spec/javascript/components/emoji_index.test.js | |
parent | 6cd5b3bbe5a11fcf25bbefba2803f2ae840f39fc (diff) | |
parent | aec70b44fc551db6471c8bc5210688b154ac661f (diff) |
Merge remote-tracking branch 'upstream/master' into gs-master
Diffstat (limited to 'spec/javascript/components/emoji_index.test.js')
-rw-r--r-- | spec/javascript/components/emoji_index.test.js | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/spec/javascript/components/emoji_index.test.js b/spec/javascript/components/emoji_index.test.js deleted file mode 100644 index cdb50cb8c..000000000 --- a/spec/javascript/components/emoji_index.test.js +++ /dev/null @@ -1,111 +0,0 @@ -import { expect } from 'chai'; -import { search } from '../../../app/javascript/mastodon/features/emoji/emoji_mart_search_light'; -import { emojiIndex } from 'emoji-mart'; -import { pick } from 'lodash'; - -const trimEmojis = emoji => pick(emoji, ['id', 'unified', 'native', 'custom']); - -// hack to fix https://github.com/chaijs/type-detect/issues/98 -// see: https://github.com/chaijs/type-detect/issues/98#issuecomment-325010785 -import jsdom from 'jsdom'; -global.window = new jsdom.JSDOM().window; -global.document = window.document; -global.HTMLElement = window.HTMLElement; - -describe('emoji_index', () => { - - it('should give same result for emoji_index_light and emoji-mart', () => { - let expected = [{ - id: 'pineapple', - unified: '1f34d', - native: '🍍', - }]; - expect(search('pineapple').map(trimEmojis)).to.deep.equal(expected); - expect(emojiIndex.search('pineapple').map(trimEmojis)).to.deep.equal(expected); - }); - - it('orders search results correctly', () => { - let expected = [{ - id: 'apple', - unified: '1f34e', - native: '🍎', - }, { - id: 'pineapple', - unified: '1f34d', - native: '🍍', - }, { - id: 'green_apple', - unified: '1f34f', - native: '🍏', - }, { - id: 'iphone', - unified: '1f4f1', - native: '📱', - }]; - expect(search('apple').map(trimEmojis)).to.deep.equal(expected); - expect(emojiIndex.search('apple').map(trimEmojis)).to.deep.equal(expected); - }); - - it('handles custom emoji', () => { - let custom = [{ - id: 'mastodon', - name: 'mastodon', - short_names: ['mastodon'], - text: '', - emoticons: [], - keywords: ['mastodon'], - imageUrl: 'http://example.com', - custom: true, - }]; - search('', { custom }); - emojiIndex.search('', { custom }); - let expected = [ { id: 'mastodon', custom: true } ]; - expect(search('masto').map(trimEmojis)).to.deep.equal(expected); - expect(emojiIndex.search('masto').map(trimEmojis)).to.deep.equal(expected); - }); - - it('should filter only emojis we care about, exclude pineapple', () => { - let emojisToShowFilter = (unified) => unified !== '1F34D'; - expect(search('apple', { emojisToShowFilter }).map((obj) => obj.id)) - .not.to.contain('pineapple'); - expect(emojiIndex.search('apple', { emojisToShowFilter }).map((obj) => obj.id)) - .not.to.contain('pineapple'); - }); - - it('can include/exclude categories', () => { - expect(search('flag', { include: ['people'] })) - .to.deep.equal([]); - expect(emojiIndex.search('flag', { include: ['people'] })) - .to.deep.equal([]); - }); - - it('does an emoji whose unified name is irregular', () => { - let expected = [{ - 'id': 'water_polo', - 'unified': '1f93d', - 'native': '🤽', - }, { - 'id': 'man-playing-water-polo', - 'unified': '1f93d-200d-2642-fe0f', - 'native': '🤽♂️', - }, { - 'id': 'woman-playing-water-polo', - 'unified': '1f93d-200d-2640-fe0f', - 'native': '🤽♀️', - }]; - expect(search('polo').map(trimEmojis)).to.deep.equal(expected); - expect(emojiIndex.search('polo').map(trimEmojis)).to.deep.equal(expected); - }); - - it('can search for thinking_face', () => { - let expected = [ { id: 'thinking_face', unified: '1f914', native: '🤔' } ]; - expect(search('thinking_fac').map(trimEmojis)).to.deep.equal(expected); - expect(emojiIndex.search('thinking_fac').map(trimEmojis)).to.deep.equal(expected); - }); - - it('can search for woman-facepalming', () => { - let expected = [ { id: 'woman-facepalming', unified: '1f926-200d-2640-fe0f', native: '🤦♀️' } ]; - expect(search('woman-facep').map(trimEmojis)).to.deep.equal(expected); - expect(emojiIndex.search('woman-facep').map(trimEmojis)).deep.equal(expected); - }); -}); |