feat: Buchungs-Pagination, Inbox-Scan-Button, Grafana-Direktansteuerung, UI-Feinschliff

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-19 16:18:54 +02:00
parent 0bad69bf42
commit d71c22adce
10 changed files with 149 additions and 13 deletions

View File

@@ -131,6 +131,17 @@ def test_upload_rejects_non_pdf(client, tmp_path, monkeypatch):
assert r.status_code == 400
def test_delete_error_import_returns_204(client, db):
# Ein fehlgeschlagener Import (status="error") muss verworfen werden
# koennen - nur bestaetigte Importe sind vor dem Loeschen geschuetzt.
from app.models.tables import Statement
db.add(Statement(filename="kaputt.pdf", bank="dkb", status="error",
error_message="PDF nicht lesbar"))
db.commit()
sid = db.query(Statement).one().id
assert client.delete(f"/api/imports/{sid}", headers=H).status_code == 204
def test_upload_corrupt_pdf_produces_error_statement_not_500(client, tmp_path, monkeypatch):
# Datei besteht die Endungspruefung (.pdf), ist aber strukturell kein
# gueltiges PDF -> pdfplumber wirft eine eigene Exception (keine