// scripts/test/backfill-series-id.test.js const { describe, it } = require('node:test'); const assert = require('node:assert/strict'); const { upsertFrontmatterField } = require('../backfill-series-id.js'); describe('upsertFrontmatterField', () => { it('inserts new field when missing', () => { const md = `---\ntags: [jour-fixe]\nserie: IT Team\nrhythmus: wöchentlich\n---\n\n# Agenda\n`; const out = upsertFrontmatterField(md, 'o365_series_id', 'AAMkSeries123'); assert.ok(out.includes('o365_series_id: AAMkSeries123')); assert.ok(out.includes('serie: IT Team')); assert.ok(out.endsWith('# Agenda\n')); }); it('replaces existing field value', () => { const md = `---\nserie: X\no365_series_id: OLD\n---\n\nbody\n`; const out = upsertFrontmatterField(md, 'o365_series_id', 'NEW'); assert.ok(out.includes('o365_series_id: NEW')); assert.ok(!out.includes('OLD')); }); it('returns content unchanged when no frontmatter present', () => { const md = `# No frontmatter\n`; const out = upsertFrontmatterField(md, 'o365_series_id', 'X'); assert.equal(out, md); }); });