Buchungskalender: Mail-Nummern K36, K37, T23 (K31/K32/T22 gehören den Aufträgen)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
knsoandClaude Opus 5.5 committed 2026-10-07 15:47:29 +00:00
1 parent fd971309a8
commit 3526909d61
17 files changed
+51 -47

No files matched your search

+7 -7
View File
@@ -44,7 +44,7 @@ const status = (opts = { cookie }) => send('GET', `/api/unterkunft/status?projec
const entscheide = (b, opts = staff) => rawPost(`/api/team/unterkunft/c1/anfrage`, { projectId: P, ...b }, opts)
const einst = () => aw.docs('ukEinstellungen').get(FEATURE) ?? null
// Mails: die Aufrufe werden festgehalten und gegen die echten Vorlagen K34/T22 gerendert (problems muss leer bleiben)
// Mails: die Aufrufe werden festgehalten und gegen die echten Vorlagen K34/T23 gerendert (problems muss leer bleiben)
const aufrufe = { admin: [], kunde: [], probleme: [], adminFehler: false, kundeFehler: false }
af._versand.admin = async (m) => {
aufrufe.admin.push(m)
@@ -89,7 +89,7 @@ test('normalisiereAnfrage: gueltig, Alias monteur, Fehler je Feld', () => {
assert.ok(af.normalisiereAnfrage(null).fehler.art)
})
test('Anfrage stellen: gespeichert, T22 ans Team, Status-Block fuer state off', async () => {
test('Anfrage stellen: gespeichert, T23 ans Team, Status-Block fuer state off', async () => {
const leer = await status()
assert.equal(leer.status, 200)
assert.equal(leer.body.state, 'off')
@@ -103,7 +103,7 @@ test('Anfrage stellen: gespeichert, T22 ans Team, Status-Block fuer state off',
assert.equal(JSON.parse(einst().anfrage).art, 'monteurzimmer')
assert.equal(aw.docs('portalFeatures').get(FEATURE).state, 'off')
assert.equal(aufrufe.admin.length, 1)
assert.equal(aufrufe.admin[0].template, 'T22')
assert.equal(aufrufe.admin[0].template, 'T23')
assert.equal(aufrufe.admin[0].values.projekt, 'Donau')
assert.match(aufrufe.admin[0].values.nachricht, /^Art: Monteurwohnung\nEinheiten: 3\nPortale: Booking\.com, Airbnb/)
assert.equal(aufrufe.admin[0].values.woms_url, `${config.womsBaseUrl}/customers/c1?tab=funktionen`)
@@ -145,7 +145,7 @@ test('Anfrage: doppelt 409, nur bei state off, Eingabefehler, Schalter, fremdes
assert.equal(einst(), null)
})
test('Anfrage: Mail-Fehler bei T22 verhindert nichts; Grenze 20 je Stunde', async () => {
test('Anfrage: Mail-Fehler bei T23 verhindert nichts; Grenze 20 je Stunde', async () => {
aufrufe.adminFehler = true
assert.equal((await stelle()).status, 200)
assert.equal(einst().anfrageStatus, 'offen')
@@ -312,15 +312,15 @@ test('ticketDetails: siteKey, Snippet, Schritte, Verweis, Anfrage; wirft nie', a
assert.ok(viaConfig.includes('abcdefghijklmnop'))
})
test('T22 und K34 (angenommen und abgelehnt) passen zu den Vorlagen: keine Platzhalter-Probleme', async () => {
test('T23 und K34 (angenommen und abgelehnt) passen zu den Vorlagen: keine Platzhalter-Probleme', async () => {
assert.equal((await stelle({ nachricht: 'Hallo\nZeile 2' })).status, 200)
assert.equal((await entscheide({ entscheidung: 'ablehnen', begruendung: 'Passt nicht.' })).status, 200)
assert.equal((await stelle()).status, 200)
assert.equal((await entscheide({ entscheidung: 'annehmen' })).status, 200)
assert.deepEqual(aufrufe.admin.map((m) => m.template), ['T22', 'T22'])
assert.deepEqual(aufrufe.admin.map((m) => m.template), ['T23', 'T23'])
assert.deepEqual(aufrufe.kunde.map((m) => m.template), ['K34', 'K34'])
assert.deepEqual(aufrufe.probleme, [])
const t22 = renderMail('T22', aufrufe.admin[0].values, {})
const t22 = renderMail('T23', aufrufe.admin[0].values, {})
assert.match(t22.text, /Art: Ferienwohnung oder Ferienhaus/)
assert.match(t22.text, /Hallo/)
const k34 = renderMail('K34', aufrufe.kunde[1].values, aufrufe.kunde[1].blocks)