diff --git a/docs/tests/testkatalog.html b/docs/tests/testkatalog.html index 1ade333..e5da8bd 100644 --- a/docs/tests/testkatalog.html +++ b/docs/tests/testkatalog.html @@ -125,8 +125,8 @@ Testkatalog der sn_*-Plugins — was die Suite heute prüft, auf einen Blick.
Quelle: docs/tests/testkatalog.md
Baseline: docs/status/testbaseline.json (SHA-256 aeabc946a7f3)
Prüf-Audit: docs/status/testpruefungen.json (SHA-256 68b590c8feef)
-
580Testfälle
-
537grün
+
581Testfälle
+
538grün
35rot (Baseline)
75%mit Docstring
@@ -135,12 +135,12 @@
35%ohne Testbezug
Verteilung je Paket
-
sn_basis32 Dateien · 328 Testfälle
+
sn_basis32 Dateien · 329 Testfälle
sn_verfahrensgebiet12 Dateien · 208 Testfälle
sn_plan415 Dateien · 44 Testfälle
@@ -159,11 +159,11 @@

sn_basis

Plattform-Plugin · Ordner Plugin_SN_Basis

- -
32Testdateien
328Testfälle
328grün
0rot (Baseline)
100%mit Docstring
17%geprüft
72ohne Testbezug
+
32Testdateien
329Testfälle
329grün
0rot (Baseline)
100%mit Docstring
17%geprüft
72ohne Testbezug

Tests für sn_basis/ui/base_dockwidget.py::closeEvent (Issue #65).

CloseEventTests 5
flowchart TD
   root(["test_base_dockwidget.py"])
   class root rootnode
@@ -629,7 +629,7 @@
   classDef groupnode fill:#cfe0da,stroke:#5c8a7d,stroke-width:1px,color:#152420;
   classDef ok fill:#dcefdc,stroke:#3f7d4a,stroke-width:1px,color:#1c3a20;
   classDef warn fill:#f6ead9,stroke:#b5722a,stroke-width:1px,color:#4a2c08;
-  classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;
TestfallprüftStatusgeprüft
GetMessageBarTests
test_liefert_objekt_mit_pushmessage_methode
Prüft, dass _get_message_bar ein Objekt mit aufrufbarer pushMessage()-Methode liefert.grünnie geprüft
GetMessageBarTests
test_faellt_bei_fehlerhaftem_iface_auf_mock_bar_zurueck
Prüft, dass ein Fehler beim Zugriff auf iface.messageBar() auf eine funktionierende Mock-MessageBar zurückfällt.grünnie geprüft
PushMessageTests
test_liefert_dict_mit_titel_text_level_und_dauer
Prüft, dass push_message im Mock-Modus ein Dict mit den übergebenen Werten liefert.grünnie geprüft
PushMessageTests
test_fehler_in_der_message_bar_wird_abgefangen
Prüft, dass eine fehlschlagende MessageBar push_message nicht zum Absturz bringt, sondern None liefert.grünnie geprüft

Tests für sn_basis/ui/navigation.py::Navigation (Issue #67, ohne init_ui – s. Docstring dort).

AddActionTests 2FinalizeMenuAndToolbarTests 2SetActivePluginTests 2RemoveActionTests 3RemoveAllTests 2
flowchart TD
+  classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;
TestfallprüftStatusgeprüft
GetMessageBarTests
test_liefert_objekt_mit_pushmessage_methode
Prüft, dass _get_message_bar ein Objekt mit aufrufbarer pushMessage()-Methode liefert.grünnie geprüft
GetMessageBarTests
test_faellt_bei_fehlerhaftem_iface_auf_mock_bar_zurueck
Prüft, dass ein Fehler beim Zugriff auf iface.messageBar() auf eine funktionierende Mock-MessageBar zurückfällt.grünnie geprüft
PushMessageTests
test_liefert_dict_mit_titel_text_level_und_dauer
Prüft, dass push_message im Mock-Modus ein Dict mit den übergebenen Werten liefert.grünnie geprüft
PushMessageTests
test_fehler_in_der_message_bar_wird_abgefangen
Prüft, dass eine fehlschlagende MessageBar push_message nicht zum Absturz bringt, sondern None liefert.grünnie geprüft

Tests für sn_basis/ui/navigation.py::Navigation (Issue #67, ohne init_ui – s. Docstring dort).

AddActionTests 2FinalizeMenuAndToolbarTests 2SetActivePluginTests 2RemoveActionTests 3RemoveAllTests 3
flowchart TD
   root(["test_navigation.py"])
   class root rootnode
   root --> g1["AddActionTests (2)"]
@@ -649,10 +649,11 @@
   g4 --> t7("none_action_tut_nichts")
   g4 --> t8("entfernt_action_aus_menu_toolbar_und_liste")
   g4 --> t9("ohne_menu_oder_toolbar_entfernt_trotzdem_aus_liste")
-  root --> g5["RemoveAllTests (2)"]
+  root --> g5["RemoveAllTests (3)"]
   class g5 groupnode
   g5 --> t10("entfernt_menu_toolbar_und_setzt_zustand_zurueck")
-  g5 --> t11("ohne_menu_und_toolbar_ruft_wrapper_nicht_auf")
+  g5 --> t11("loescht_menu_und_toolbar_objekt_damit_kein_duplikat_uebrig_bleibt")
+  g5 --> t12("ohne_menu_und_toolbar_ruft_wrapper_nicht_auf")
   class t1 ok
   class t2 ok
   class t3 ok
@@ -664,11 +665,12 @@
   class t9 ok
   class t10 ok
   class t11 ok
+  class t12 ok
   classDef rootnode fill:#1f4038,stroke:#16302a,stroke-width:1px,color:#f4f1e8,font-weight:600;
   classDef groupnode fill:#cfe0da,stroke:#5c8a7d,stroke-width:1px,color:#152420;
   classDef ok fill:#dcefdc,stroke:#3f7d4a,stroke-width:1px,color:#1c3a20;
   classDef warn fill:#f6ead9,stroke:#b5722a,stroke-width:1px,color:#4a2c08;
-  classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;
TestfallprüftStatusgeprüft
AddActionTests
test_ohne_plugin_group_liefert_none
Prüft, dass add_action ohne initialisierte Aktionsgruppe None liefert und nichts anlegt.grünnie geprüft
AddActionTests
test_erzeugt_action_und_fuegt_sie_gruppe_und_liste_hinzu
Prüft, dass add_action eine Action erzeugt, ihr die Gruppe zuweist und sie priorisiert in der Liste ablegt.grünnie geprüft
FinalizeMenuAndToolbarTests
test_ohne_menu_oder_toolbar_tut_nichts
Prüft, dass finalize_menu_and_toolbar ohne Menü oder Toolbar keine Ausnahme wirft.grünnie geprüft
FinalizeMenuAndToolbarTests
test_sortiert_und_fuegt_aktionen_in_prioritaetsreihenfolge_hinzu
Prüft, dass finalize_menu_and_toolbar Aktionen nach Priorität sortiert in Menü und Toolbar einträgt.grünnie geprüft
SetActivePluginTests
test_setzt_nur_aktive_action_auf_checked
Prüft, dass set_active_plugin nur die übergebene Action markiert, alle anderen abwählt.grünnie geprüft
SetActivePluginTests
test_ohne_aktive_action_setzt_alle_auf_false
Prüft, dass set_active_plugin ohne aktive Action alle bestehenden Actions abwählt.grünnie geprüft
RemoveActionTests
test_none_action_tut_nichts
Prüft, dass remove_action mit None keine Ausnahme wirft und die Liste unverändert lässt.grünnie geprüft
RemoveActionTests
test_entfernt_action_aus_menu_toolbar_und_liste
Prüft, dass remove_action die Action aus Menü, Toolbar und der internen Liste entfernt.grünnie geprüft
RemoveActionTests
test_ohne_menu_oder_toolbar_entfernt_trotzdem_aus_liste
Prüft, dass remove_action ohne Menü/Toolbar trotzdem aus der internen Liste entfernt.grünnie geprüft
RemoveAllTests
test_entfernt_menu_toolbar_und_setzt_zustand_zurueck
Prüft, dass remove_all Menü und Toolbar über die Wrapper entfernt und den Navigationszustand zurücksetzt.grünnie geprüft
RemoveAllTests
test_ohne_menu_und_toolbar_ruft_wrapper_nicht_auf
Prüft, dass remove_all ohne vorhandenes Menü/Toolbar die Wrapper nicht aufruft, aber die Liste leert.grünnie geprüft

Tests für sn_basis/functions/os_wrapper.py::is_case_sensitive_fs (Issue #67).

IsCaseSensitiveFsTests 3
flowchart TD
+  classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;
TestfallprüftStatusgeprüft
AddActionTests
test_ohne_plugin_group_liefert_none
Prüft, dass add_action ohne initialisierte Aktionsgruppe None liefert und nichts anlegt.grünnie geprüft
AddActionTests
test_erzeugt_action_und_fuegt_sie_gruppe_und_liste_hinzu
Prüft, dass add_action eine Action erzeugt, ihr die Gruppe zuweist und sie priorisiert in der Liste ablegt.grünnie geprüft
FinalizeMenuAndToolbarTests
test_ohne_menu_oder_toolbar_tut_nichts
Prüft, dass finalize_menu_and_toolbar ohne Menü oder Toolbar keine Ausnahme wirft.grünnie geprüft
FinalizeMenuAndToolbarTests
test_sortiert_und_fuegt_aktionen_in_prioritaetsreihenfolge_hinzu
Prüft, dass finalize_menu_and_toolbar Aktionen nach Priorität sortiert in Menü und Toolbar einträgt.grünnie geprüft
SetActivePluginTests
test_setzt_nur_aktive_action_auf_checked
Prüft, dass set_active_plugin nur die übergebene Action markiert, alle anderen abwählt.grünnie geprüft
SetActivePluginTests
test_ohne_aktive_action_setzt_alle_auf_false
Prüft, dass set_active_plugin ohne aktive Action alle bestehenden Actions abwählt.grünnie geprüft
RemoveActionTests
test_none_action_tut_nichts
Prüft, dass remove_action mit None keine Ausnahme wirft und die Liste unverändert lässt.grünnie geprüft
RemoveActionTests
test_entfernt_action_aus_menu_toolbar_und_liste
Prüft, dass remove_action die Action aus Menü, Toolbar und der internen Liste entfernt.grünnie geprüft
RemoveActionTests
test_ohne_menu_oder_toolbar_entfernt_trotzdem_aus_liste
Prüft, dass remove_action ohne Menü/Toolbar trotzdem aus der internen Liste entfernt.grünnie geprüft
RemoveAllTests
test_entfernt_menu_toolbar_und_setzt_zustand_zurueck
Prüft, dass remove_all Menü und Toolbar über die Wrapper entfernt und den Navigationszustand zurücksetzt.grünnie geprüft
RemoveAllTests
test_loescht_menu_und_toolbar_objekt_damit_kein_duplikat_uebrig_bleibt
Prüft, dass remove_all deleteLater() auf Menü und Toolbar aufruft, damit sie den Qt-Objektbaum tatsächlich verlassen (Issue #72).grünnie geprüft
RemoveAllTests
test_ohne_menu_und_toolbar_ruft_wrapper_nicht_auf
Prüft, dass remove_all ohne vorhandenes Menü/Toolbar die Wrapper nicht aufruft, aber die Liste leert.grünnie geprüft

Tests für sn_basis/functions/os_wrapper.py::is_case_sensitive_fs (Issue #67).

IsCaseSensitiveFsTests 3
flowchart TD
   root(["test_os_wrapper.py"])
   class root rootnode
   root --> g1["IsCaseSensitiveFsTests (3)"]
diff --git a/docs/tests/testkatalog.md b/docs/tests/testkatalog.md
index e451fb4..d2269b8 100644
--- a/docs/tests/testkatalog.md
+++ b/docs/tests/testkatalog.md
@@ -10,19 +10,19 @@ 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 `68b590c8feef`)
 
-Gesamt: 3 Pakete, 49 Testdateien, 580 Testfälle – 537 grün, 35 rot (Baseline), 8 übersprungen.
-Mit Beschreibung (Docstring): 435 von 580 (75 %).
-Fachlich geprüft: 55 von 580 (9 %) aktuell, 0 veraltet seit Codeänderung, 525 nie geprüft.
+Gesamt: 3 Pakete, 49 Testdateien, 581 Testfälle – 538 grün, 35 rot (Baseline), 8 übersprungen.
+Mit Beschreibung (Docstring): 436 von 581 (75 %).
+Fachlich geprüft: 55 von 581 (9 %) aktuell, 0 veraltet seit Codeänderung, 526 nie geprüft.
 Strukturelle Lücken (heuristisch, Namensabgleich): 145 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 | 328 | 328 | 0 | 0 | 328 von 328 (100 %) | 55 von 328 (17 %) | 72 von 229 (31 %) |
+| `sn_basis` | 32 | 329 | 329 | 0 | 0 | 329 von 329 (100 %) | 55 von 329 (17 %) | 72 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** | **580** | **537** | **35** | **8** | **435 von 580 (75 %)** | **55 von 580 (9 %)** | **145 von 413 (35 %)** |
+| **Summe** | **49** | **581** | **538** | **35** | **8** | **436 von 581 (75 %)** | **55 von 581 (9 %)** | **145 von 413 (35 %)** |
 
 ### Legende
 
@@ -36,7 +36,7 @@ Strukturelle Lücken (heuristisch, Namensabgleich): 145 von 413 (35 %) Funktione
 
 ## Paket `sn_basis`
 
-Plattform-Plugin, Ordner `Plugin_SN_Basis` – 32 Testdateien mit 328 Testfällen (328 grün, 0 rot, 0 übersprungen).
+Plattform-Plugin, Ordner `Plugin_SN_Basis` – 32 Testdateien mit 329 Testfällen (329 grün, 0 rot, 0 übersprungen).
 
 ### `Plugin_SN_Basis/tests/test_base_dockwidget.py`
 
@@ -384,7 +384,7 @@ Testgruppen:
 - `FinalizeMenuAndToolbarTests` (2 Testfälle): — (Docstring fehlt)
 - `SetActivePluginTests` (2 Testfälle): — (Docstring fehlt)
 - `RemoveActionTests` (3 Testfälle): — (Docstring fehlt)
-- `RemoveAllTests` (2 Testfälle): — (Docstring fehlt)
+- `RemoveAllTests` (3 Testfälle): — (Docstring fehlt)
 
 | Testfall | prüft | Status | geprüft |
 | --- | --- | --- | --- |
@@ -398,6 +398,7 @@ Testgruppen:
 | `RemoveActionTests.test_entfernt_action_aus_menu_toolbar_und_liste` | Prüft, dass remove_action die Action aus Menü, Toolbar und der internen Liste entfernt. | grün | nie geprüft |
 | `RemoveActionTests.test_ohne_menu_oder_toolbar_entfernt_trotzdem_aus_liste` | Prüft, dass remove_action ohne Menü/Toolbar trotzdem aus der internen Liste entfernt. | grün | nie geprüft |
 | `RemoveAllTests.test_entfernt_menu_toolbar_und_setzt_zustand_zurueck` | Prüft, dass remove_all Menü und Toolbar über die Wrapper entfernt und den Navigationszustand zurücksetzt. | grün | nie geprüft |
+| `RemoveAllTests.test_loescht_menu_und_toolbar_objekt_damit_kein_duplikat_uebrig_bleibt` | Prüft, dass remove_all deleteLater() auf Menü und Toolbar aufruft, damit sie den Qt-Objektbaum tatsächlich verlassen (Issue #72). | grün | nie geprüft |
 | `RemoveAllTests.test_ohne_menu_und_toolbar_ruft_wrapper_nicht_auf` | Prüft, dass remove_all ohne vorhandenes Menü/Toolbar die Wrapper nicht aufruft, aber die Liste leert. | grün | nie geprüft |
 
 ### `Plugin_SN_Basis/tests/test_os_wrapper.py`
@@ -1248,7 +1249,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 328 Testfällen ohne Beschreibung
+### `sn_basis` – 0 von 329 Testfällen ohne Beschreibung
 
 Keine Lücken.