feat: Absender-Zuordnungen bearbeiten und loeschen

Der Loesch-Endpunkt war da, aber ohne Knopf in der Oberflaeche, und
Bearbeiten fehlte ganz – eine falsch eingetippte Zuordnung liess sich also
nicht mehr korrigieren.

Jede Zuordnung ist jetzt eine eigene Zeile mit Erkennungstext und Konto;
der Speichern-Knopf erscheint erst bei einer Aenderung. Dazu ein PUT auf
/mail/senders/{id} im Backend.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Guido
2026-08-22 20:30:24 +02:00
co-authored by Claude Opus 5
parent 615be0f0f5
commit 7b087247a5
7 changed files with 103 additions and 9 deletions
+18
View File
@@ -321,3 +321,21 @@ def test_von_hand_weitergeleitete_mail_wird_am_betreff_erkannt(admin, monkeypatc
treffer = [e for e in admin.get("/api/inbox").json() if e["payee"] == "Sunrise GmbH / Yallo"]
assert treffer, "Die Werte müssen auch aus der weitergeleiteten Mail lesbar sein"
assert treffer[0]["amount_cents"] == -1490
def test_zuordnung_laesst_sich_aendern_und_loeschen(admin):
konto = _konto(admin)
zweites = _konto(admin, name="Zweitkonto")
quelle = _postfach(admin)
a = admin.post(f"/api/mail/sources/{quelle['id']}/senders",
json={"from_contains": "alt", "account_id": konto["id"]}).json()
r = admin.put(f"/api/mail/senders/{a['id']}",
json={"from_contains": "neu", "account_id": zweites["id"]})
assert r.status_code == 200, r.text
assert r.json()["from_contains"] == "neu"
assert r.json()["account_id"] == zweites["id"]
assert admin.delete(f"/api/mail/senders/{a['id']}").status_code == 204
uebrig = admin.get(f"/api/mail/sources/{quelle['id']}/senders").json()
assert not [x for x in uebrig if x["id"] == a["id"]]