note-facets.test.mjs
22 lines 961 B
Raw
sha256:8915fe406161f95c1681f9469375e7bae5b28c884f00bedbdef65e4b0cd0738d docs(flow): commit FLOW-V0-SPEC.md hygiene for 7A-INT merge Human 18 hours 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 1 commit
sha256:8915fe406161f95c1681f9469375e7bae5b28c884f00bedbdef65e4b0cd0738d docs(flow): commit FLOW-V0-SPEC.md hygiene for 7A-INT merge Human 18 hours ago