Test-Audit sn_basis fortgesetzt: print_layout.py fachlich geprüft (#76)
8 Testfälle nach Freigabe als geprüft markiert: test_print_layout.py komplett (5 bestehende, 3 neue für create_single_page_layout). Nebenbefunde (direkter qgis.PyQt-Import per importlib, removeGrid-Mock nach Name statt UUID, ungenutztes width_limit_mm) bewusst ohne Issue: das Druckmodul wird ohnehin grundlegend überarbeitet. Testkatalog neu erzeugt. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+18
-12
File diff suppressed because one or more lines are too long
+18
-15
@@ -8,21 +8,21 @@ für die fachliche Frage, ob die Abdeckung sinnvoll ist. Die Angaben stammen aus
|
||||
selbst (Docstrings) und aus der Testbaseline.
|
||||
|
||||
Stand der Baseline: `docs/status/testbaseline.json` (SHA-256 `aeabc946a7f3`)
|
||||
Stand des Prüf-Audits: `docs/status/testpruefungen.json` (SHA-256 `155fa98a71a7`)
|
||||
Stand des Prüf-Audits: `docs/status/testpruefungen.json` (SHA-256 `7a6ff0bd3c1a`)
|
||||
|
||||
Gesamt: 3 Pakete, 49 Testdateien, 600 Testfälle – 557 grün, 35 rot (Baseline), 8 übersprungen.
|
||||
Mit Beschreibung (Docstring): 455 von 600 (76 %).
|
||||
Fachlich geprüft: 199 von 600 (33 %) aktuell, 0 veraltet seit Codeänderung, 401 nie geprüft.
|
||||
Gesamt: 3 Pakete, 49 Testdateien, 603 Testfälle – 560 grün, 35 rot (Baseline), 8 übersprungen.
|
||||
Mit Beschreibung (Docstring): 458 von 603 (76 %).
|
||||
Fachlich geprüft: 207 von 603 (34 %) aktuell, 0 veraltet seit Codeänderung, 396 nie geprüft.
|
||||
Strukturelle Lücken (heuristisch, Namensabgleich): 143 von 413 (35 %) Funktionen/Methoden ohne erkennbaren Testbezug – Abschnitt „Ungetestete Funktionen“.
|
||||
|
||||
## Zusammenfassung
|
||||
|
||||
| Paket | Testdateien | Testfälle | grün | rot (Baseline) | übersprungen | mit Beschreibung | fachlich geprüft | ohne Testbezug |
|
||||
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
|
||||
| `sn_basis` | 32 | 348 | 348 | 0 | 0 | 348 von 348 (100 %) | 199 von 348 (57 %) | 70 von 229 (31 %) |
|
||||
| `sn_basis` | 32 | 351 | 351 | 0 | 0 | 351 von 351 (100 %) | 207 von 351 (59 %) | 70 von 229 (31 %) |
|
||||
| `sn_verfahrensgebiet` | 12 | 208 | 166 | 34 | 8 | 106 von 208 (51 %) | 0 von 208 (0 %) | 34 von 104 (33 %) |
|
||||
| `sn_plan41` | 5 | 44 | 43 | 1 | 0 | 1 von 44 (2 %) | 0 von 44 (0 %) | 39 von 80 (49 %) |
|
||||
| **Summe** | **49** | **600** | **557** | **35** | **8** | **455 von 600 (76 %)** | **199 von 600 (33 %)** | **143 von 413 (35 %)** |
|
||||
| **Summe** | **49** | **603** | **560** | **35** | **8** | **458 von 603 (76 %)** | **207 von 603 (34 %)** | **143 von 413 (35 %)** |
|
||||
|
||||
### Legende
|
||||
|
||||
@@ -36,7 +36,7 @@ Strukturelle Lücken (heuristisch, Namensabgleich): 143 von 413 (35 %) Funktione
|
||||
|
||||
## Paket `sn_basis`
|
||||
|
||||
Plattform-Plugin, Ordner `Plugin_SN_Basis` – 32 Testdateien mit 348 Testfällen (348 grün, 0 rot, 0 übersprungen).
|
||||
Plattform-Plugin, Ordner `Plugin_SN_Basis` – 32 Testdateien mit 351 Testfällen (351 grün, 0 rot, 0 übersprungen).
|
||||
|
||||
### `Plugin_SN_Basis/tests/test_base_dockwidget.py`
|
||||
|
||||
@@ -444,15 +444,18 @@ Worum es in der Datei geht: — (Docstring fehlt)
|
||||
|
||||
Testgruppen:
|
||||
|
||||
- `TestPrintLayout` (5 Testfälle): — (Docstring fehlt)
|
||||
- `TestPrintLayout` (8 Testfälle): — (Docstring fehlt)
|
||||
|
||||
| Testfall | prüft | Status | geprüft |
|
||||
| --- | --- | --- | --- |
|
||||
| `TestPrintLayout.test_create_legend_item_links_map_and_enables_map_filtering` | Prüft, dass eine erzeugte Legende mit der übergebenen Karte verknüpft ist und automatisch nach deren Sichtbarkeit gefiltert wird. | grün | nie geprüft |
|
||||
| `TestPrintLayout.test_create_legend_item_does_not_copy_project_layers_into_legend_model` | Prüft, dass eine neu erzeugte Legende keine Projekt-Layer in ihr Legendenmodell übernimmt (leere Root-Gruppe). | grün | nie geprüft |
|
||||
| `TestPrintLayout.test_configure_legend_size_uses_content_adaptive_size` | Prüft, dass die Legendengröße inhaltsadaptiv bestimmt wird (kein manuelles Resize) und die ermittelte Höhe zurückgegeben wird. | grün | nie geprüft |
|
||||
| `TestPrintLayout.test_configure_hauptkarte_grids_uses_wrapper_constants` | Prüft, dass das Gitternetz der Hauptkarte mit den erwarteten Stil-, Rahmen- und Beschriftungskonstanten (nur rechts/unten beschriftet, Schriftgröße und Hintergrund) konfiguriert wird. | grün | nie geprüft |
|
||||
| `TestPrintLayout.test_create_single_page_layout_keeps_legend_linked_to_hauptkarte_and_theme` | Prüft, dass ein einseitiges Layout die Hauptkarte auf das übergebene Kartenthema festlegt und die Legende mit dieser Karte verknüpft bleibt. | grün | nie geprüft |
|
||||
| `TestPrintLayout.test_create_legend_item_links_map_and_enables_map_filtering` | Prüft, dass eine erzeugte Legende mit der übergebenen Karte verknüpft ist und automatisch nach deren Sichtbarkeit gefiltert wird. | grün | geprüft am 2026-09-29 |
|
||||
| `TestPrintLayout.test_create_legend_item_does_not_copy_project_layers_into_legend_model` | Prüft, dass _create_legend_item das Legendenmodell nicht von Hand mit Projekt-Layern befüllt. | grün | geprüft am 2026-09-29 |
|
||||
| `TestPrintLayout.test_configure_legend_size_uses_content_adaptive_size` | Prüft, dass die Legendengröße inhaltsadaptiv bestimmt wird (kein manuelles Resize) und die ermittelte Höhe zurückgegeben wird. | grün | geprüft am 2026-09-29 |
|
||||
| `TestPrintLayout.test_configure_hauptkarte_grids_uses_wrapper_constants` | Prüft, dass das Gitternetz der Hauptkarte mit den erwarteten Stil-, Rahmen- und Beschriftungskonstanten (nur rechts/unten beschriftet, Schriftgröße und Hintergrund) konfiguriert wird. | grün | geprüft am 2026-09-29 |
|
||||
| `TestPrintLayout.test_create_single_page_layout_keeps_legend_linked_to_hauptkarte_and_theme` | Prüft, dass ein einseitiges Layout die Hauptkarte auf das übergebene Kartenthema festlegt und die Legende mit dieser Karte verknüpft bleibt. | grün | geprüft am 2026-09-29 |
|
||||
| `TestPrintLayout.test_create_single_page_layout_bricht_bei_vorhandenem_layoutnamen_ab` | Prüft, dass create_single_page_layout bei bereits vorhandenem Layoutnamen einen ValueError wirft und kein Layout anlegt. | grün | geprüft am 2026-09-29 |
|
||||
| `TestPrintLayout.test_create_single_page_layout_ohne_thema_oder_aktuell_folgt_keinem_kartenthema` | Prüft, dass die Hauptkarte bei leerem Thema oder Thema „aktuell" keinem Kartenthema folgt, sondern die aktuelle Kartenansicht zeigt. | grün | geprüft am 2026-09-29 |
|
||||
| `TestPrintLayout.test_create_single_page_layout_setzt_nur_gueltigen_plotmassstab` | Prüft, dass die Hauptkarte einen positiven Plotmaßstab übernimmt und bei 0, negativem Wert oder NaN keinen Maßstab gesetzt bekommt. | grün | geprüft am 2026-09-29 |
|
||||
|
||||
### `Plugin_SN_Basis/tests/test_print_logic.py`
|
||||
|
||||
@@ -557,7 +560,7 @@ Testgruppen:
|
||||
|
||||
| Testfall | prüft | Status | geprüft |
|
||||
| --- | --- | --- | --- |
|
||||
| `IstVerfahrensDbAktionTests.test_liefert_true_fuer_alle_verfahrens_db_aktionen` | Prüft, dass ist_verfahrens_db_aktion für alle vier Verfahrens-DB-Aktionscodes True liefert. | grün | nie geprüft |
|
||||
| `IstVerfahrensDbAktionTests.test_liefert_true_fuer_alle_verfahrens_db_aktionen` | Prüft, dass ist_verfahrens_db_aktion für alle fünf Verfahrens-DB-Aktionscodes True liefert. | grün | nie geprüft |
|
||||
| `IstVerfahrensDbAktionTests.test_liefert_false_fuer_andere_aktionen` | Prüft, dass ist_verfahrens_db_aktion für Nicht-Verfahrens-DB-Aktionen und ohne Aktion False liefert. | grün | nie geprüft |
|
||||
| `ErlaubtePersistierungTests.test_liefert_true_fuer_erzeugen_ueberschreiben_anhaengen` | Prüft, dass erlaubte_persistierung für Erzeugen/Überschreiben/Anhängen True liefert. | grün | nie geprüft |
|
||||
| `ErlaubtePersistierungTests.test_liefert_false_fuer_ueberspringen_und_reines_existieren` | Prüft, dass erlaubte_persistierung bei Überspringen und reinem 'datei_existiert' False liefert. | grün | nie geprüft |
|
||||
@@ -1272,7 +1275,7 @@ Arbeitsliste: Diese Testfälle haben keinen Docstring; was sie fachlich prüfen,
|
||||
aus dem Quelltext erschließen. Jeder Eintrag braucht eine einzeilige Beschreibung im Testfall,
|
||||
dann verschwindet er hier von selbst.
|
||||
|
||||
### `sn_basis` – 0 von 348 Testfällen ohne Beschreibung
|
||||
### `sn_basis` – 0 von 351 Testfällen ohne Beschreibung
|
||||
|
||||
Keine Lücken.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user