Files
trade-message-center/apps/chrome-extension/test/onetalk-sync-push-decoder.test.js
T

37 lines
1.0 KiB
JavaScript

// 验证 OneTalk 同步推送解码结果
import assert from "node:assert/strict";
import test from "node:test";
import { decodeOneTalkSyncPushData } from "../src/onetalk/main-page/sync-push-decoder.ts";
test("decodes OneTalk status payloads", () => {
const decoded = decodeOneTalkSyncPushData(
"gQGRhAHaACYyMjA4MzE0MDAwNzk4LTI1MDAwMDIxNjk1MDIjMTEwMTFAaWNidQIBAwEEsjI1MDAwMDIxNjk1MDJAaWNidQ==",
);
assert.deepEqual(decoded, {
1: [
{
1: "2208314000798-2500002169502#11011@icbu",
2: 1,
3: 1,
4: "2500002169502@icbu",
},
],
});
});
test("decodes OneTalk message payloads", () => {
const decoded = decodeOneTalkSyncPushData("ggGs5om+5L2g55yf6Zq+As8AAAGgODt1FA==");
assert.deepEqual(decoded, {
1: "找你真难",
2: 1787649815828n,
});
});
test("rejects truncated payloads", () => {
assert.throws(() => decodeOneTalkSyncPushData("2gA="), /Unexpected end/);
});