2019-03-26 13:24:46 +00:00
|
|
|
/*
|
2019-03-17 15:03:57 +00:00
|
|
|
import * as assert from 'assert';
|
|
|
|
|
2022-02-27 02:07:39 +00:00
|
|
|
import { toDbReaction } from '../src/misc/reaction-lib.js';
|
2019-03-17 15:03:57 +00:00
|
|
|
|
|
|
|
describe('toDbReaction', async () => {
|
2023-02-02 09:18:25 +00:00
|
|
|
test('既存の文字列リアクションはそのまま', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('like'), 'like');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('Unicodeプリンは寿司化不能とするため文字列化しない', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('🍮'), '🍮');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する like', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('👍'), 'like');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する love', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('❤️'), 'love');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する love 異体字セレクタなし', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('❤'), 'love');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する laugh', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('😆'), 'laugh');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する hmm', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('🤔'), 'hmm');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する surprise', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('😮'), 'surprise');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する congrats', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('🎉'), 'congrats');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する angry', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('💢'), 'angry');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する confused', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('😥'), 'confused');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('プリン以外の既存のリアクションは文字列化する rip', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('😇'), 'rip');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('それ以外はUnicodeのまま', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('🍅'), '🍅');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('異体字セレクタ除去', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('㊗️'), '㊗');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('異体字セレクタ除去 必要なし', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('㊗'), '㊗');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('fallback - undefined', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction(undefined), 'like');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('fallback - null', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction(null), 'like');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('fallback - empty', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction(''), 'like');
|
|
|
|
});
|
|
|
|
|
2023-02-02 09:18:25 +00:00
|
|
|
test('fallback - unknown', async () => {
|
2019-03-17 15:03:57 +00:00
|
|
|
assert.strictEqual(await toDbReaction('unknown'), 'like');
|
|
|
|
});
|
|
|
|
});
|
2019-03-26 13:24:46 +00:00
|
|
|
*/
|