22 lines
823 B
JavaScript
22 lines
823 B
JavaScript
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']
|
|
);
|
|
}); |