Abrechnungen links im Hauptfenster (Klick öffnet), Import fragt nach der Ziel-Abrechnung
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
057cca6378
commit
2600eea574
3 files changed
+101
-11
No files matched your search
@@ -1129,3 +1129,35 @@ def _alle(widget):
|
||||
for kind in widget.winfo_children():
|
||||
yield kind
|
||||
yield from _alle(kind)
|
||||
|
||||
|
||||
def test_abrechnungen_links_und_import_fragt_nach_ziel(lauf_modern, home, monkeypatch):
|
||||
from provtool.gui import win95 as w
|
||||
from provtool.gui.dialogs import AbrechnungenDialog, ImportBericht
|
||||
monkeypatch.setattr(w, "frage", lambda *a, **k: True) # „bereits importiert – trotzdem?“ (Testdatei ist schon drin)
|
||||
lauf = lauf_modern
|
||||
app = lauf.app
|
||||
alt = app.aid
|
||||
neu = app.db.abrechnung_neu("November 2026")
|
||||
app._aktualisieren()
|
||||
assert set(app.atree.get_children()) == {str(alt), str(neu)}, "Abrechnungen fehlen links"
|
||||
app.atree.selection_set(str(neu))
|
||||
lauf.root.update()
|
||||
assert app.aid == neu and not app.positionen, "Klick links öffnet die Abrechnung nicht"
|
||||
app.atree.selection_set(str(alt))
|
||||
lauf.root.update()
|
||||
|
||||
def ziel_waehlen():
|
||||
d = lauf.dialog(AbrechnungenDialog)
|
||||
d.tree.selection_set(str(neu))
|
||||
d._oeffnen()
|
||||
|
||||
lauf.ablauf([
|
||||
(IMMER, lambda: app.importieren([str(home / "freenet.csv")]), "Import"),
|
||||
(lambda: lauf.dialog(AbrechnungenDialog) is not None, ziel_waehlen, "Ziel: November"),
|
||||
(lambda: lauf.dialog(ImportBericht) is not None, lambda: lauf.dialog(ImportBericht).abbrechen(), "Bericht zu"),
|
||||
])
|
||||
assert not lauf.uebrig, lauf.diagnose()
|
||||
assert app.aid == neu and len(app.positionen) == 3, "Import nicht in der gewählten Abrechnung"
|
||||
assert app.atree.selection() == (str(neu),)
|
||||
lauf.pruefen()
|
||||
Reference in new issue
Block a user