Add support for m.recent_emoji account data event (#33172)
* Improve types in AccountSettingsHandler * Add support for `m.recent_emoji` account data event Maintains read-compatibility with `io.element.recent_emoji` * Iterate * Make ts happier * Improve coverage * Improve coverage * Improve coverage
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
Copyright 2026 Element Creations Ltd.
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial
|
||||
Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
import { translateLegacyEmojiData, mergeEmojiData } from "../../../../../src/emojipicker/recent.ts";
|
||||
|
||||
describe("recent", () => {
|
||||
describe("translateLegacyEmojiData", () => {
|
||||
it("should correctly translate to the new format", () => {
|
||||
expect(
|
||||
translateLegacyEmojiData([
|
||||
["🤩", 1],
|
||||
["😀", 2],
|
||||
]),
|
||||
).toEqual([
|
||||
{ emoji: "🤩", total: 1 },
|
||||
{ emoji: "😀", total: 2 },
|
||||
]);
|
||||
});
|
||||
});
|
||||
|
||||
describe("mergeEmojiData", () => {
|
||||
it("should merge given data correctly", () => {
|
||||
expect(
|
||||
mergeEmojiData(
|
||||
[{ emoji: "🤩", total: 1 }],
|
||||
[
|
||||
{ emoji: "🤩", total: 2 },
|
||||
{ emoji: "😀", total: 1 },
|
||||
],
|
||||
),
|
||||
).toEqual([
|
||||
{ emoji: "🤩", total: 2 },
|
||||
{ emoji: "😀", total: 1 },
|
||||
]);
|
||||
});
|
||||
|
||||
it("should handle data2 being undefined", () => {
|
||||
expect(mergeEmojiData([{ emoji: "🤩", total: 1 }])).toEqual([{ emoji: "🤩", total: 1 }]);
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user