feat: Admin Area General Settings and Categories 1.07

This commit is contained in:
OpenVelo Agent
2026-07-22 14:52:59 +00:00
parent 1858121f75
commit 1e77b7a273
7 changed files with 323 additions and 97 deletions
+20
View File
@@ -2,6 +2,7 @@ import {
datetimeMessage,
deriveEventState,
endAfterStartValidator,
eventEndFieldMessage,
isoDatetimeValidator,
normalizePageTitle,
pageTitleError,
@@ -203,3 +204,22 @@ describe('datetimeMessage', () => {
expect(datetimeMessage('Event start', '2026-08-15T10:30:00.000Z', null)).toBeNull();
});
});
describe('eventEndFieldMessage (Job 889)', () => {
const endIsoMsg = 'Event end must be a valid ISO-8601 datetime.';
const endBeforeMsg = 'Event end must be after event start.';
it('returns the ISO message when invalidDatetime is set, even if endBeforeStart is also set', () => {
expect(eventEndFieldMessage({ invalidDatetime: true }, { endBeforeStart: true })).toBe(endIsoMsg);
});
it('returns the end-before-start message when invalidDatetime is absent and endBeforeStart is set', () => {
expect(eventEndFieldMessage(null, { endBeforeStart: true })).toBe(endBeforeMsg);
expect(eventEndFieldMessage({}, { endBeforeStart: true })).toBe(endBeforeMsg);
});
it('returns null when both error sources are absent', () => {
expect(eventEndFieldMessage(null, null)).toBeNull();
expect(eventEndFieldMessage({}, {})).toBeNull();
});
});