Öffnungszeiten: Status "Leisten live – Einbau läuft" nur bei einbau angestossen
In der Einrichtung nennt der Statustext "Leisten live – Einbau läuft" nur noch, wenn der Neubau angestossen ist. Bei einbau manuell oder leer steht "Einbau läuft (Team setzt die Skript-Zeile von Hand)"; "wartet auf die Zeiten des Kunden" geht weiter vor. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
3d67aa88cf
commit
919d96f7a0
2 files changed
+29
-10
No files matched your search
@@ -10,20 +10,33 @@ const {
|
||||
} = await loadModule('src/lib/zeitenView.js')
|
||||
|
||||
const EINBAU = 'Leisten live – Einbau läuft'
|
||||
const VON_HAND = 'Einbau läuft (Team setzt die Skript-Zeile von Hand)'
|
||||
const WARTET = 'wartet auf die Zeiten des Kunden'
|
||||
|
||||
test('zeitenStatusText: Einrichtung ohne Hindernis – Leisten sind live, der Einbau läuft', () => {
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: null }), EINBAU)
|
||||
assert.equal(zeitenStatusText({ state: 'setup' }), EINBAU, 'ohne Feld hindernis')
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: '' }), EINBAU)
|
||||
test('zeitenStatusText: Einrichtung ohne Hindernis, Einbau angestossen – Leisten sind live, der Einbau läuft', () => {
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: null, einbau: 'angestossen' }), EINBAU)
|
||||
assert.equal(zeitenStatusText({ state: 'setup', einbau: 'angestossen' }), EINBAU, 'ohne Feld hindernis')
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: '', einbau: 'angestossen' }), EINBAU)
|
||||
})
|
||||
|
||||
test('zeitenStatusText: Einrichtung mit hindernis "zeiten_fehlen" – wartet auf die Zeiten des Kunden', () => {
|
||||
test('zeitenStatusText: Einrichtung mit einbau manuell oder leer – nie "Leisten live", das Team setzt die Zeile von Hand', () => {
|
||||
for (const einbau of ['manuell', '', null, undefined, 'irgendwas_neues']) {
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: null, einbau }), VON_HAND, JSON.stringify(einbau))
|
||||
}
|
||||
assert.equal(zeitenStatusText({ state: 'setup' }), VON_HAND, 'ohne Feld einbau')
|
||||
assert.doesNotMatch(VON_HAND, /Leisten live/)
|
||||
})
|
||||
|
||||
test('zeitenStatusText: Einrichtung mit hindernis "zeiten_fehlen" – wartet auf die Zeiten des Kunden (geht jedem Einbau-Text vor)', () => {
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: 'zeiten_fehlen' }), WARTET)
|
||||
for (const einbau of ['angestossen', 'manuell', '', null]) {
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: 'zeiten_fehlen', einbau }), WARTET, JSON.stringify(einbau))
|
||||
}
|
||||
})
|
||||
|
||||
test('zeitenStatusText: unbekanntes Hindernis zeigt nichts Erfundenes, sondern den Einbau-Text', () => {
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: 'irgendwas_neues' }), EINBAU)
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: 'irgendwas_neues', einbau: 'angestossen' }), EINBAU)
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: 'irgendwas_neues', einbau: 'manuell' }), VON_HAND)
|
||||
})
|
||||
|
||||
test('zeitenStatusText: Abo-Ende nennt die Frist (Berliner Tag des Abo-Endes plus 30 Tage)', () => {
|
||||
@@ -42,7 +55,8 @@ test('zeitenStatusText: Abo-Ende nennt die Frist (Berliner Tag des Abo-Endes plu
|
||||
test('zeitenStatusText: Abo-Ende in der Einrichtung steht zusätzlich zum Einbau- bzw. Warte-Text', () => {
|
||||
const aboEndeAt = '2026-10-04T10:00:00.000Z'
|
||||
const frist = 'Abo beendet – Abschaltung am 03.11.2026, falls der Kunde die Funktion nicht behält'
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: null, aboEndeAt }), `${EINBAU} · ${frist}`)
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: null, einbau: 'angestossen', aboEndeAt }), `${EINBAU} · ${frist}`)
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: null, einbau: 'manuell', aboEndeAt }), `${VON_HAND} · ${frist}`)
|
||||
assert.equal(zeitenStatusText({ state: 'setup', hindernis: 'zeiten_fehlen', aboEndeAt }), `${WARTET} · ${frist}`)
|
||||
})
|
||||
|
||||
@@ -66,6 +80,8 @@ test('zeitenStatusText: aktiv ohne Abo-Ende, aus, bestellt, abgeschaltet, ohne A
|
||||
test('zeitenStatusText: kein Text nennt "24 Uhr"', () => {
|
||||
for (const feature of [
|
||||
{ state: 'setup' },
|
||||
{ state: 'setup', einbau: 'angestossen' },
|
||||
{ state: 'setup', einbau: 'manuell' },
|
||||
{ state: 'setup', hindernis: 'zeiten_fehlen' },
|
||||
{ state: 'active', aboEndeAt: '2026-10-04T10:00:00.000Z' },
|
||||
{ state: 'setup', hindernis: 'zeiten_fehlen', aboEndeAt: '2026-10-04T22:30:00.000Z' },
|
||||
|
||||
Reference in new issue
Block a user