Show read-only server reading hours in settings
This commit is contained in:
1 parent
de8e7ed988
commit
ddd9c62c40
9 files changed
+89
-7
No files matched your search
@@ -1,7 +1,7 @@
|
||||
'use strict';
|
||||
const test = require('node:test');
|
||||
const assert = require('node:assert/strict');
|
||||
const { parseSchedule, scheduled, answerMatches, createReadingAccess } = require('../reading-access');
|
||||
const { parseSchedule, scheduled, publicSchedule, answerMatches, createReadingAccess } = require('../reading-access');
|
||||
|
||||
const windows = parseSchedule(JSON.stringify({
|
||||
0: [['08:00', '01:00']], 1: [['07:00', '12:00'], ['13:00', '24:00']],
|
||||
@@ -25,6 +25,15 @@ test('schedule config rejects malformed and zero-length windows', () => {
|
||||
assert.throws(() => parseSchedule('{"1":[["25:00","26:00"]]}', 'Europe/Berlin'));
|
||||
});
|
||||
|
||||
test('public schedule exposes only the configured read-only windows', () => {
|
||||
const view = publicSchedule(windows);
|
||||
assert.equal(view.enabled, true);
|
||||
assert.equal(view.timezone, 'Europe/Berlin');
|
||||
assert.deepEqual(view.days[1], [['07:00', '12:00'], ['13:00', '24:00']]);
|
||||
assert.deepEqual(view.days[6], [['08:00', '01:00']]);
|
||||
assert.deepEqual(publicSchedule(null), { enabled: false, timezone: null, days: [] });
|
||||
});
|
||||
|
||||
test('answers accept aliases and small typos but not unrelated words', () => {
|
||||
assert.equal(answerMatches(' luffy ', ['Monkey D. Luffy', 'Luffy']), true);
|
||||
assert.equal(answerMatches('Lufy', ['Luffy']), true);
|
||||
|
||||
Reference in new issue
Block a user