note-facets.test.mjs
22 lines 961 B
Raw
sha256:fbe982a22c05c6fe2e93876f250deecdb43d883f648b4e1810c7546caa9f17db docs: activate KNOWTATION- board identity and preserve livi… Human minor ⚠ breaking 3 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 1 commit
sha256:fbe982a22c05c6fe2e93876f250deecdb43d883f648b4e1810c7546caa9f17db docs: activate KNOWTATION- board identity and preserve livi… Human minor 3 days ago