Funktionen-Reiter kennt "Öffnungszeiten live" (zeiten) hinter dem Terminplaner: Bestätigungstexte, Site-Key, Aktionen je Zustand (Abnahme nur ohne Hindernis "zeiten_fehlen"). Neues Modul zeitenView.js: Statustext (Einbau läuft / wartet auf die Zeiten des Kunden / Abo-Ende mit Frist), navSelektorFehler (Spiegel der Portal-Regel) und teamBody für PATCH .../zeiten/team. Protokoll-Label für zeiten_gespeichert. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
27 lines
1.2 KiB
JavaScript
27 lines
1.2 KiB
JavaScript
import test from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
import { loadModule } from './load.mjs'
|
|
|
|
// Protokoll der Kundenansicht: Aktionen des Portals (customerViewLog.action) als deutsche Beschriftung
|
|
const { viewLogLabel, formatViewLogTime } = await loadModule('src/lib/viewLog.js')
|
|
|
|
test('viewLogLabel: alle elf Aktionen und Rohwert', () => {
|
|
assert.deepEqual(
|
|
[
|
|
'geoeffnet', 'beendet', 'abgelaufen', 'news_angelegt', 'news_bild', 'news_geaendert', 'news_geloescht',
|
|
'termin_einstellungen', 'termin_aktion', 'termin_manuell', 'zeiten_gespeichert',
|
|
].map(viewLogLabel),
|
|
[
|
|
'Kundenansicht geöffnet', 'Kundenansicht beendet', 'Kundenansicht abgelaufen', 'News angelegt', 'News-Foto hochgeladen', 'News geändert', 'News gelöscht',
|
|
'Terminplaner-Einstellungen geändert', 'Termin bearbeitet', 'Termin eingetragen', 'Öffnungszeiten gespeichert',
|
|
]
|
|
)
|
|
assert.equal(viewLogLabel('neu_irgendwas'), 'neu_irgendwas')
|
|
})
|
|
|
|
test('formatViewLogTime: deutsche Zeit, dd.mm.yyyy hh:mm', () => {
|
|
assert.equal(formatViewLogTime('2026-09-30T10:05:00.000Z'), '30.09.2026 12:05')
|
|
assert.equal(formatViewLogTime('2026-12-01T23:30:00.000Z'), '02.12.2026 00:30')
|
|
assert.equal(formatViewLogTime(''), '')
|
|
})
|