Kategorie "vielleicht testen" in sn_basis abgeschlossen (#67) #69

Merged
Daniel merged 1 commits from feature/67-vielleicht-testen-bewerten into unstable 2026-09-18 11:11:35 +00:00
Member

Was

Die Kategorie „vielleicht testen" wird für sn_basis abgeschlossen: alle 31 verbleibenden Funktionen sind jetzt entweder getestet oder mit einem begründeten Vermerk versehen. Issue: #67 (Folge zu #63/#65)

Wie geprüft

  • python scripts/run_tests.py sn_basis --baseline: GRÜN 317/317 bestanden, unverändert gegenüber Baseline (vorher 280/280)
  • QGIS-Test: nicht nötig – reine Logik/Zustandsverwaltung/Signal-Wiring, im Mock-Modus mit Fake-Objekten geprüft (kein echtes Qt/QGIS-Rendering nötig)

Änderungen an Verträgen

keine – nur Tests ergänzt, eine Docstring-Zeile bei PrintTab._build_ui

Übergabenotiz

Aufgabe: Basis #67 – Kategorie „vielleicht testen" abschließend bewerten
Stand: fertig
Geändert:

  • 3 neue Testdateien: test_navigation.py, test_os_wrapper.py, test_print_tab.py (34+3 Tests, 18 PrintTab-Methoden)
  • 5 erweiterte Testdateien: test_datagrabber.py, test_pruef_ergebnis.py, test_qgiscore_wrapper_helpers.py, test_qgisui_wrapper_helpers.py, test_settings_tab.py
  • ui/tabs/print_tab.py: eine Docstring-Zeile bei _build_ui („Test ausgesetzt, zunächst Refactor" wäre falsch gewesen, da print_tab.py nicht Teil des Print-Refactors ist – hier stattdessen „von Test abgesehen, weil vernachlässigbar", da reine Qt-Widget-Konstruktion ohne eigenständig prüfbare Logik)
  • changelog.txt
    Nachweis: siehe oben
    Entscheidungen/Annahmen:
  • qgiscore_wrapper.create_buffer_layer nur in den Wächtern getestet (QGIS_AVAILABLE=False, ungültiger source_layer) – die eigentliche Pufferlogik importiert qgis.core.QgsFeature direkt und ist im Mock-Modus
  • Bei allen PrintTab-Methoden, die self.logic.* (PrintLogic) aufrufen, wurde self.logic durch ein Fake/Mock ersetzt – geprüft wird nur, dass PrintTab die
    richtige Methode mit den richtigen Argumenten aufruft, nie drhalten (das steht wegen #63/#65 unter „Test ausgesetzt,zunächst Refactor").
    Offen / nächste Schritte: keine – die drei zuvor offenen Punatenschreiber._store_style_in_gpkg, der Pfad-Bug,_ask_use_or_replace_pufferlayer) sind bereits als eigene Tickets/Issues vermerkt (#60 bzw. noch zu erstellen), nicht Teil von #67.
    Wissensbasis: docs/architektur/modulkarte.md (Testdateizahl)twissen-Repo. Keine neuen Fallstricke gefunden (alle benötigten Wrapper-Mocks waren bereits vollständig genug).

Checkliste

  • Nur Änderungen zum Issue
  • Keine direkten Qt/QGIS-Importe, keine Debug-print
  • changelog.txt ergänzt
  • Wissensbasis nachgezogen (Testdateizahl in modulkarte.md
Was Die Kategorie „vielleicht testen" wird für sn_basis abgeschlossen: alle 31 verbleibenden Funktionen sind jetzt entweder getestet oder mit einem begründeten Vermerk versehen. Issue: #67 (Folge zu #63/#65) Wie geprüft - python scripts/run_tests.py sn_basis --baseline: GRÜN 317/317 bestanden, unverändert gegenüber Baseline (vorher 280/280) - QGIS-Test: nicht nötig – reine Logik/Zustandsverwaltung/Signal-Wiring, im Mock-Modus mit Fake-Objekten geprüft (kein echtes Qt/QGIS-Rendering nötig) Änderungen an Verträgen keine – nur Tests ergänzt, eine Docstring-Zeile bei PrintTab._build_ui Übergabenotiz Aufgabe: Basis #67 – Kategorie „vielleicht testen" abschließend bewerten Stand: fertig Geändert: - 3 neue Testdateien: test_navigation.py, test_os_wrapper.py, test_print_tab.py (34+3 Tests, 18 PrintTab-Methoden) - 5 erweiterte Testdateien: test_datagrabber.py, test_pruef_ergebnis.py, test_qgiscore_wrapper_helpers.py, test_qgisui_wrapper_helpers.py, test_settings_tab.py - ui/tabs/print_tab.py: eine Docstring-Zeile bei _build_ui („Test ausgesetzt, zunächst Refactor" wäre falsch gewesen, da print_tab.py nicht Teil des Print-Refactors ist – hier stattdessen „von Test abgesehen, weil vernachlässigbar", da reine Qt-Widget-Konstruktion ohne eigenständig prüfbare Logik) - changelog.txt Nachweis: siehe oben Entscheidungen/Annahmen: - qgiscore_wrapper.create_buffer_layer nur in den Wächtern getestet (QGIS_AVAILABLE=False, ungültiger source_layer) – die eigentliche Pufferlogik importiert qgis.core.QgsFeature direkt und ist im Mock-Modus - Bei allen PrintTab-Methoden, die self.logic.* (PrintLogic) aufrufen, wurde self.logic durch ein Fake/Mock ersetzt – geprüft wird nur, dass PrintTab die richtige Methode mit den richtigen Argumenten aufruft, nie drhalten (das steht wegen #63/#65 unter „Test ausgesetzt,zunächst Refactor"). Offen / nächste Schritte: keine – die drei zuvor offenen Punatenschreiber._store_style_in_gpkg, der Pfad-Bug,_ask_use_or_replace_pufferlayer) sind bereits als eigene Tickets/Issues vermerkt (#60 bzw. noch zu erstellen), nicht Teil von #67. Wissensbasis: docs/architektur/modulkarte.md (Testdateizahl)twissen-Repo. Keine neuen Fallstricke gefunden (alle benötigten Wrapper-Mocks waren bereits vollständig genug). Checkliste - [x] Nur Änderungen zum Issue - [x] Keine direkten Qt/QGIS-Importe, keine Debug-print - [x] changelog.txt ergänzt - [x] Wissensbasis nachgezogen (Testdateizahl in modulkarte.md
Daniel added 1 commit 2026-09-18 11:11:25 +00:00
37 neue Testfälle für die 31 verbleibenden "vielleicht testen"-
Funktionen: os_wrapper.is_case_sensitive_fs, qgiscore_wrapper.
create_buffer_layer (nur die Wächter, echte Pufferlogik importiert
qgis.core direkt), qgisui_wrapper.find_dock_widgets/add_menu/remove_menu,
DataGrabber._aggregate_results, pruef_ergebnis.dateipfad,
Navigation (add_action, finalize_menu_and_toolbar, set_active_plugin,
remove_action, remove_all), SettingsTab._build_input und PrintTab
(18 Methoden: Zustandslogik, Signal-Handling, Atlas-/Theme-Verwaltung).

PrintTab._build_ui bekommt stattdessen den Vermerk "von Test abgesehen,
weil vernachlässigbar; HD 18.09.2026" - reine Qt-Widget-Konstruktion ohne
eigenständig prüfbare Logik. Damit ist die Kategorie "vielleicht testen"
für sn_basis aufgelöst: jede Funktion ist jetzt getestet oder mit einem
begründeten Vermerk versehen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Daniel merged commit 84df7a6dfb into unstable 2026-09-18 11:11:35 +00:00
Daniel deleted branch feature/67-vielleicht-testen-bewerten 2026-09-18 11:11:35 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: AG_QGIS/Plugin_SN_Basis#69