const test = require('node:test'); const assert = require('node:assert/strict'); const fs = require('node:fs'); const vm = require('node:vm'); test('region type registry lists add-region buttons by label', () => { const script = fs.readFileSync(require.resolve('../src/web/public/js/regions/region-types.js'), 'utf8'); const sandbox = { window: {} }; vm.runInNewContext(script, sandbox, { filename: 'region-types.js' }); const registry = sandbox.window.pulseRegionTypes; registry.register('timetable', { label: 'Timetable' }); registry.register('text', { label: 'Text' }); registry.register('time-date', { label: 'Time/date' }); registry.register('api', { label: 'API' }); assert.deepEqual( Array.from(registry.list(), (entry) => entry.type), ['api', 'text', 'time-date', 'timetable'] ); });