Buchungskalender: Abgleich – G22/K33-Platzhalter

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
knsoandClaude Opus 5.5 committed 2026-10-07 14:58:50 +00:00
1 parent 74543b75c3
commit e5793fd151
6 files changed
+15 -10

No files matched your search

+1 -1
View File
@@ -1339,7 +1339,7 @@ test('K31–K34, T22: Dateien, Platzhalter, Du-Form', () => {
const erwartet = {
K31: ['kunde_name', 'gast_name', 'gast_email', 'unterkunft', 'zeitraum', 'naechte', 'personen', 'nummer', 'nachricht_gast', 'portal_url'],
K32: ['kunde_name', 'gast_name', 'unterkunft', 'zeitraum', 'naechte', 'personen', 'nummer', 'gesamt', 'zahlart_text', 'portal_url'],
K33: ['kunde_name', 'unterkunft', 'portal_url'],
K33: ['kunde_name', 'unterkunft', 'quelle', 'seit', 'portal_url'],
K34: ['kunde_name', 'projekt', 'preis', 'ust_hinweis', 'begruendung', 'portal_url'],
T22: ['kunde_name', 'email', 'projekt', 'nachricht', 'woms_url'],
}
+4 -2
View File
@@ -48,7 +48,7 @@ beforeEach(async () => {
sink = mailSink()
setMailTransportForTests(sink)
aw.seed('portalFeatures', { $id: FEATURE, customerId: 'c1', projectId: 'p1', featureKey: 'unterkunft', siteKey: 'abcdefghijklmnop', state: 'active', enabled: true })
aw.seed('customers', { $id: 'c1', email: 'mimi@example.com' })
aw.seed('customers', { $id: 'c1', email: 'mimi@example.com', name: 'Mimi Muster' })
aw.seed('websiteProjects', { $id: 'p1', customerId: 'c1', projectName: 'Donau' })
})
afterEach(() => Object.assign(config.unterkunft, vorher))
@@ -237,7 +237,9 @@ test('K33: erst nach icalFehlerStunden ohne Erfolg, danach hoechstens 1x je 24 h
assert.deepEqual(Object.keys(K33()[0]).sort(), ['an', 'anfrageId', 'template'])
await warteAufVersand()
const k33 = sink.sent.find((m) => /Erste/.test(m.text ?? ''))
assert.ok(k33, 'Mail nennt die Unterkunft (K33 kennt keine Platzhalter quelle/seit)')
assert.ok(k33, 'Mail nennt die Unterkunft')
assert.match(k33.text, /Hallo Mimi Muster,/)
assert.match(k33.text, /„Booking\.com“ für Erste schlägt seit 07\.11\.2026, 06:00 fehl/)
assert.deepEqual(k33.to.map((x) => x.address), ['mimi@example.com'])
assert.ok(!JSON.stringify(k33).includes('geheim'))
assert.ok(!JSON.stringify(K33()[0]).includes('geheim'))