mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-27 16:02:26 +00:00
59 lines
2.0 KiB
JavaScript
59 lines
2.0 KiB
JavaScript
import test from "node:test";
|
|
import assert from "node:assert/strict";
|
|
|
|
import { buildReactionEvent } from "../js/nostrEventSchemas.js";
|
|
|
|
test("buildReactionEvent includes pointer and author tags when pubkey provided", () => {
|
|
const event = buildReactionEvent({
|
|
pubkey: "viewer",
|
|
created_at: 1700000000,
|
|
pointerValue: "event-id",
|
|
pointerTag: ["e", "event-id", "wss://relay.example"],
|
|
targetPointer: { type: "e", value: "event-id", relay: "wss://relay.example" },
|
|
targetAuthorPubkey: "author-pubkey",
|
|
content: "+",
|
|
});
|
|
|
|
const pointerTags = event.tags.filter((tag) => Array.isArray(tag) && tag[0] === "e");
|
|
assert.deepEqual(pointerTags, [["e", "event-id", "wss://relay.example"]]);
|
|
|
|
const authorTags = event.tags.filter((tag) => Array.isArray(tag) && tag[0] === "p");
|
|
assert.deepEqual(authorTags, [["p", "author-pubkey", "wss://relay.example"]]);
|
|
});
|
|
|
|
test(
|
|
"buildReactionEvent merges address and event pointers for addressable targets",
|
|
() => {
|
|
const event = buildReactionEvent({
|
|
pubkey: "viewer",
|
|
created_at: 1700000001,
|
|
pointerValue: "30078:deadbeefcafebabe:clip-1",
|
|
pointerTag: ["a", "30078:deadbeefcafebabe:clip-1"],
|
|
pointerTags: [
|
|
["a", "30078:deadbeefcafebabe:clip-1", "wss://relay.example"],
|
|
["e", "event-id"],
|
|
["e", "event-id", "wss://event.relay"],
|
|
],
|
|
targetPointer: {
|
|
type: "a",
|
|
value: "30078:deadbeefcafebabe:clip-1",
|
|
relay: "wss://relay.example",
|
|
},
|
|
content: "+",
|
|
});
|
|
|
|
const addressTags = event.tags.filter((tag) => Array.isArray(tag) && tag[0] === "a");
|
|
assert.deepEqual(addressTags, [[
|
|
"a",
|
|
"30078:deadbeefcafebabe:clip-1",
|
|
"wss://relay.example",
|
|
]]);
|
|
|
|
const eventTags = event.tags.filter((tag) => Array.isArray(tag) && tag[0] === "e");
|
|
assert.deepEqual(eventTags, [["e", "event-id", "wss://event.relay"]]);
|
|
|
|
const authorTags = event.tags.filter((tag) => Array.isArray(tag) && tag[0] === "p");
|
|
assert.deepEqual(authorTags, [["p", "deadbeefcafebabe", "wss://relay.example"]]);
|
|
}
|
|
);
|