Buchungskalender: Abgleich – Rechnungs-PDF 200-Pfad getestet, 501 nur bei fehlendem Modul

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
knsoandClaude Opus 5.5 committed 2026-10-07 14:52:13 +00:00
1 parent d27f6d5ddb
commit 2eb38032d3
3 files changed
+11 -7

No files matched your search

+5 -3
View File
@@ -474,7 +474,7 @@ test('Stornieren: Erstattung fehlgeschlagen -> 502 erstattung_fehlgeschlagen mit
// ------------------------------------------------------------------------------------------------ Rechnungen
test('Rechnungen: Liste nur des Projekts; PDF fremde Rechnung 404, eigene 200 oder 501, unsichere ID 404', async () => {
test('Rechnungen: Liste nur des Projekts; PDF fremde Rechnung 404, eigene 200 als PDF, unsichere ID 404', async () => {
aw.seed('ukRechnungen', { $id: 'r1', featureId: FEATURE, anfrageId: 'a1', art: 'rechnung', nummer: 'DH-2026-0001', datum: '2026-11-01', bruttoCent: 100, inhalt: JSON.stringify({ anfrageNummer: 'A-X', empfaenger: { name: 'Eva' } }) })
aw.seed('ukRechnungen', { $id: 'rfremd', featureId: 'anderes', anfrageId: 'a9', art: 'rechnung', nummer: 'XX-1', datum: '2026-11-01', bruttoCent: 100, inhalt: '{}' })
const l = (await get('/rechnungen')).body.rechnungen
@@ -488,8 +488,10 @@ test('Rechnungen: Liste nur des Projekts; PDF fremde Rechnung 404, eigene 200 od
assert.equal((await get('/rechnungen/r1')).status, 404)
assert.equal((await get('/rechnungen/..%2F..%2Fx.pdf')).status, 404)
const eigene = await get('/rechnungen/r1.pdf')
assert.ok([200, 501].includes(eigene.status), String(eigene.status))
if (eigene.status === 501) assert.equal(eigene.body.fehler, 'nicht_verfuegbar')
assert.equal(eigene.status, 200)
assert.equal(eigene.headers.get('content-type'), 'application/pdf')
assert.match(eigene.headers.get('content-disposition'), /Rechnung-DH-2026-0001\.pdf/)
assert.ok(String(eigene.body).startsWith('%PDF-'), 'PDF-Kopf')
})
// ------------------------------------------------------------------------------------------------ Stripe