note-facets.test.mjs
22 lines 961 B
Raw
sha256:fd47ab66017e55331b88ba3a59c34c23e4e05c5aec424251d3a404c5a7998c8e feat(hub): restore integration tile detail modals; add Herm… Human minor ⚠ breaking 16 days ago
1 import test from 'node:test';
2 import assert from 'node:assert';
3 import { materializeListFrontmatter, parseFrontmatterJsonText } from '../hub/gateway/note-facets.mjs';
4
5 test('materializeListFrontmatter parses plain JSON object string', () => {
6 const fm = materializeListFrontmatter(JSON.stringify({ title: 'x', tags: 'a,b' }));
7 assert.equal(fm.title, 'x');
8 assert.equal(fm.tags, 'a,b');
9 });
10
11 test('materializeListFrontmatter unwraps double JSON-encoded string (hosted persistence quirk)', () => {
12 const inner = JSON.stringify({ title: 'Hub probe', tags: 'probe-tag', date: '2026-03-22' });
13 const doubleEncoded = JSON.stringify(inner);
14 const fm = materializeListFrontmatter(doubleEncoded);
15 assert.equal(fm.title, 'Hub probe');
16 assert.equal(fm.tags, 'probe-tag');
17 assert.equal(fm.date, '2026-03-22');
18 });
19
20 test('parseFrontmatterJsonText returns {} on invalid JSON', () => {
21 assert.deepStrictEqual(parseFrontmatterJsonText('not json'), {});
22 });
File History 3 commits
sha256:fd47ab66017e55331b88ba3a59c34c23e4e05c5aec424251d3a404c5a7998c8e feat(hub): restore integration tile detail modals; add Herm… Human minor 16 days ago
sha256:2827ba9e7632a4b141c50caf1e8f7d77abbc3515be20e7465f2bccb0ac4edf91 fix: repair endpoint now sets has_active_subscription when … Human minor 16 days ago