Test-Audit sn_basis fortgesetzt: ly_existence_wrapper.py fachlich geprüft (#76)
11 Testfälle fachlich geprüft und markiert: test_ly_existence_wrapper.py komplett (inkl. 3 neuer Tests für layer_exists). Dabei gefunden und in Plugin_SN_Basis als Issues vorbereitet (Absenden durch den Menschen): layer_is_valid/layer_is_usable haben keinen Aufrufer, isValid() wird rund 20-mal direkt aufgerufen (nutzen oder entfernen); Layerpruefer lässt ungültige Layer im Existenz-Schritt durch. Testkatalog neu erzeugt. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -547,6 +547,50 @@
|
|||||||
"datum": "2026-09-17",
|
"datum": "2026-09-17",
|
||||||
"hash": "67e86095b7ad"
|
"hash": "67e86095b7ad"
|
||||||
},
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerExistsTests.test_none_existiert_nicht": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "46610a354f52"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerExistsTests.test_ungueltiger_layer_existiert_trotzdem": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "2723abe4b70a"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerExistsTests.test_vorhandenes_objekt_existiert": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "36946f5654b9"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsUsableTests.test_gueltiger_layer_ist_nutzbar": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "d023884b88ed"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsUsableTests.test_none_ist_nicht_nutzbar": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "3c3dfa47e10c"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsUsableTests.test_ungueltiger_layer_ist_nicht_nutzbar": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "371afd48088a"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsValidTests.test_ausnahme_bei_isvalid_liefert_false": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "cdea9c039230"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsValidTests.test_gueltiger_layer_liefert_true": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "b59492eacf41"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsValidTests.test_none_ist_nicht_gueltig": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "fe9e75b0dd64"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsValidTests.test_objekt_ohne_isvalid_ist_nicht_gueltig": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "a9ac192cbaea"
|
||||||
|
},
|
||||||
|
"sn_basis.tests.test_ly_existence_wrapper.LayerIsValidTests.test_ungueltiger_layer_liefert_false": {
|
||||||
|
"datum": "2026-09-23",
|
||||||
|
"hash": "8c70103cdd59"
|
||||||
|
},
|
||||||
"sn_basis.tests.test_pruefmanager.TestPruefmanager.test_datei_existiert_append": {
|
"sn_basis.tests.test_pruefmanager.TestPruefmanager.test_datei_existiert_append": {
|
||||||
"datum": "2026-09-17",
|
"datum": "2026-09-17",
|
||||||
"hash": "25e169c45423"
|
"hash": "25e169c45423"
|
||||||
|
|||||||
+28
-20
@@ -123,24 +123,24 @@
|
|||||||
|
|
||||||
<div class="topbar"><div class="brand"><h1>Prüfstand</h1>
|
<div class="topbar"><div class="brand"><h1>Prüfstand</h1>
|
||||||
<span class="tagline">Testkatalog der sn_*-Plugins — was die Suite heute prüft, auf einen Blick.</span></div>
|
<span class="tagline">Testkatalog der sn_*-Plugins — was die Suite heute prüft, auf einen Blick.</span></div>
|
||||||
<div class="meta-line">Quelle: <b>docs/tests/testkatalog.md</b><br>Baseline: <span class="mono">docs/status/testbaseline.json</span> (SHA-256 aeabc946a7f3)<br>Prüf-Audit: <span class="mono">docs/status/testpruefungen.json</span> (SHA-256 2f7e27c76ee7)</div></div>
|
<div class="meta-line">Quelle: <b>docs/tests/testkatalog.md</b><br>Baseline: <span class="mono">docs/status/testbaseline.json</span> (SHA-256 aeabc946a7f3)<br>Prüf-Audit: <span class="mono">docs/status/testpruefungen.json</span> (SHA-256 4d0c4430fa9f)</div></div>
|
||||||
<div class="summary">
|
<div class="summary">
|
||||||
<div class="stat"><span class="n">592</span><span class="l">Testfälle</span></div>
|
<div class="stat"><span class="n">595</span><span class="l">Testfälle</span></div>
|
||||||
<div class="stat ok"><span class="n">549</span><span class="l">grün</span></div>
|
<div class="stat ok"><span class="n">552</span><span class="l">grün</span></div>
|
||||||
<div class="stat warn"><span class="n">35</span><span class="l">rot (Baseline)</span></div>
|
<div class="stat warn"><span class="n">35</span><span class="l">rot (Baseline)</span></div>
|
||||||
<div class="stat skip"><span class="n">8</span><span class="l">übersprungen</span></div>
|
<div class="stat skip"><span class="n">8</span><span class="l">übersprungen</span></div>
|
||||||
<div class="stat"><span class="n">76%</span><span class="l">mit Docstring</span></div>
|
<div class="stat"><span class="n">76%</span><span class="l">mit Docstring</span></div>
|
||||||
<div class="stat"><span class="n">27%</span><span class="l">aktuell geprüft</span></div>
|
<div class="stat"><span class="n">29%</span><span class="l">aktuell geprüft</span></div>
|
||||||
<div class="stat"><span class="n">49</span><span class="l">Testdateien</span></div>
|
<div class="stat"><span class="n">49</span><span class="l">Testdateien</span></div>
|
||||||
<div class="stat warn"><span class="n">35%</span><span class="l">ohne Testbezug</span></div>
|
<div class="stat warn"><span class="n">35%</span><span class="l">ohne Testbezug</span></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pkg-bars"><div class="pkg-bars-title">Verteilung je Paket</div>
|
<div class="pkg-bars"><div class="pkg-bars-title">Verteilung je Paket</div>
|
||||||
<div class="pkg-bar-row"><span class="name">sn_basis</span><span class="minibar" role="img" aria-label="340 grün, 0 rot, 0 übersprungen"><span class="seg seg-ok" style="width:100%"></span><span class="seg seg-warn" style="width:0%"></span><span class="seg seg-skip" style="width:0%"></span></span><span class="count">32 Dateien · 340 Testfälle</span></div>
|
<div class="pkg-bar-row"><span class="name">sn_basis</span><span class="minibar" role="img" aria-label="343 grün, 0 rot, 0 übersprungen"><span class="seg seg-ok" style="width:100%"></span><span class="seg seg-warn" style="width:0%"></span><span class="seg seg-skip" style="width:0%"></span></span><span class="count">32 Dateien · 343 Testfälle</span></div>
|
||||||
<div class="pkg-bar-row"><span class="name">sn_verfahrensgebiet</span><span class="minibar" role="img" aria-label="166 grün, 34 rot, 8 übersprungen"><span class="seg seg-ok" style="width:80%"></span><span class="seg seg-warn" style="width:16%"></span><span class="seg seg-skip" style="width:4%"></span></span><span class="count">12 Dateien · 208 Testfälle</span></div>
|
<div class="pkg-bar-row"><span class="name">sn_verfahrensgebiet</span><span class="minibar" role="img" aria-label="166 grün, 34 rot, 8 übersprungen"><span class="seg seg-ok" style="width:80%"></span><span class="seg seg-warn" style="width:16%"></span><span class="seg seg-skip" style="width:4%"></span></span><span class="count">12 Dateien · 208 Testfälle</span></div>
|
||||||
<div class="pkg-bar-row"><span class="name">sn_plan41</span><span class="minibar" role="img" aria-label="43 grün, 1 rot, 0 übersprungen"><span class="seg seg-ok" style="width:98%"></span><span class="seg seg-warn" style="width:2%"></span><span class="seg seg-skip" style="width:0%"></span></span><span class="count">5 Dateien · 44 Testfälle</span></div>
|
<div class="pkg-bar-row"><span class="name">sn_plan41</span><span class="minibar" role="img" aria-label="43 grün, 1 rot, 0 übersprungen"><span class="seg seg-ok" style="width:98%"></span><span class="seg seg-warn" style="width:2%"></span><span class="seg seg-skip" style="width:0%"></span></span><span class="count">5 Dateien · 44 Testfälle</span></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="controls"><nav class="nav-links">
|
<div class="controls"><nav class="nav-links">
|
||||||
<a href="#pkg-sn_basis">sn_basis <span class="mono">(340)</span></a>
|
<a href="#pkg-sn_basis">sn_basis <span class="mono">(343)</span></a>
|
||||||
<a href="#pkg-sn_verfahrensgebiet">sn_verfahrensgebiet <span class="mono">(208)</span></a>
|
<a href="#pkg-sn_verfahrensgebiet">sn_verfahrensgebiet <span class="mono">(208)</span></a>
|
||||||
<a href="#pkg-sn_plan41">sn_plan41 <span class="mono">(44)</span></a>
|
<a href="#pkg-sn_plan41">sn_plan41 <span class="mono">(44)</span></a>
|
||||||
</nav><div class="filters">
|
</nav><div class="filters">
|
||||||
@@ -159,11 +159,11 @@
|
|||||||
<h2>sn_basis</h2>
|
<h2>sn_basis</h2>
|
||||||
<p class="pkg-sub">Plattform-Plugin · Ordner <span class="mono">Plugin_SN_Basis</span></p>
|
<p class="pkg-sub">Plattform-Plugin · Ordner <span class="mono">Plugin_SN_Basis</span></p>
|
||||||
</div>
|
</div>
|
||||||
<div class="pkg-bar" role="img" aria-label="340 grün, 0 rot, 0 übersprungen">
|
<div class="pkg-bar" role="img" aria-label="343 grün, 0 rot, 0 übersprungen">
|
||||||
<span class="seg seg-ok" style="width:100%"></span><span class="seg seg-warn" style="width:0%"></span><span class="seg seg-skip" style="width:0%"></span>
|
<span class="seg seg-ok" style="width:100%"></span><span class="seg seg-warn" style="width:0%"></span><span class="seg seg-skip" style="width:0%"></span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pkg-summary"><div class="stat stat-sm"><span class="n">32</span><span class="l">Testdateien</span></div><div class="stat stat-sm"><span class="n">340</span><span class="l">Testfälle</span></div><div class="stat stat-sm ok"><span class="n">340</span><span class="l">grün</span></div><div class="stat stat-sm warn"><span class="n">0</span><span class="l">rot (Baseline)</span></div><div class="stat stat-sm skip"><span class="n">0</span><span class="l">übersprungen</span></div><div class="stat stat-sm"><span class="n">100%</span><span class="l">mit Docstring</span></div><div class="stat stat-sm"><span class="n">47%</span><span class="l">geprüft</span></div><div class="stat stat-sm"><span class="n">72</span><span class="l">ohne Testbezug</span></div></div>
|
<div class="pkg-summary"><div class="stat stat-sm"><span class="n">32</span><span class="l">Testdateien</span></div><div class="stat stat-sm"><span class="n">343</span><span class="l">Testfälle</span></div><div class="stat stat-sm ok"><span class="n">343</span><span class="l">grün</span></div><div class="stat stat-sm warn"><span class="n">0</span><span class="l">rot (Baseline)</span></div><div class="stat stat-sm skip"><span class="n">0</span><span class="l">übersprungen</span></div><div class="stat stat-sm"><span class="n">100%</span><span class="l">mit Docstring</span></div><div class="stat stat-sm"><span class="n">50%</span><span class="l">geprüft</span></div><div class="stat stat-sm"><span class="n">72</span><span class="l">ohne Testbezug</span></div></div>
|
||||||
<div class="card-grid"><article class="filecard" data-search="plugin_sn_basis/tests/test_base_dockwidget.py closeeventtests test_ruft_cleanup_aller_tabs_auf closeeventtests test_ignoriert_tabs_ohne_cleanup closeeventtests test_fehler_in_cleanup_wird_abgefangen_und_andere_tabs_laufen_weiter closeeventtests test_setzt_toolbar_action_zurueck closeeventtests test_ohne_action_wird_nichts_zurueckgesetzt" data-hasred="0" data-hasskip="0" data-nodoc="0" data-ungeprueft="0" data-veraltet="0"><button class="card-toggle" data-target="plugin-sn-basis-tests-test-base-dockwidget-py" aria-expanded="false"><span class="card-path mono">Plugin_SN_Basis/tests/test_base_dockwidget.py</span><span class="card-meta"><span class="count-total">5 Testfälle</span><span class="cpill cpill-ok">5</span><span class="docbadge" title="Anteil mit Docstring">100% beschrieben</span><span class="auditbadge" title="Anteil fachlich aktuell geprüft">100% geprüft</span><span class="chev" aria-hidden="true">▾</span></span></button><div class="card-body" id="body-plugin-sn-basis-tests-test-base-dockwidget-py"><p class="filedesc">Tests für sn_basis/ui/base_dockwidget.py::closeEvent (Issue #65).</p><div class="gchips"><span class="gchip" title="">CloseEventTests <b>5</b></span></div><div class="diagram-wrap"><pre class="mermaid">flowchart TD
|
<div class="card-grid"><article class="filecard" data-search="plugin_sn_basis/tests/test_base_dockwidget.py closeeventtests test_ruft_cleanup_aller_tabs_auf closeeventtests test_ignoriert_tabs_ohne_cleanup closeeventtests test_fehler_in_cleanup_wird_abgefangen_und_andere_tabs_laufen_weiter closeeventtests test_setzt_toolbar_action_zurueck closeeventtests test_ohne_action_wird_nichts_zurueckgesetzt" data-hasred="0" data-hasskip="0" data-nodoc="0" data-ungeprueft="0" data-veraltet="0"><button class="card-toggle" data-target="plugin-sn-basis-tests-test-base-dockwidget-py" aria-expanded="false"><span class="card-path mono">Plugin_SN_Basis/tests/test_base_dockwidget.py</span><span class="card-meta"><span class="count-total">5 Testfälle</span><span class="cpill cpill-ok">5</span><span class="docbadge" title="Anteil mit Docstring">100% beschrieben</span><span class="auditbadge" title="Anteil fachlich aktuell geprüft">100% geprüft</span><span class="chev" aria-hidden="true">▾</span></span></button><div class="card-body" id="body-plugin-sn-basis-tests-test-base-dockwidget-py"><p class="filedesc">Tests für sn_basis/ui/base_dockwidget.py::closeEvent (Issue #65).</p><div class="gchips"><span class="gchip" title="">CloseEventTests <b>5</b></span></div><div class="diagram-wrap"><pre class="mermaid">flowchart TD
|
||||||
root(["test_base_dockwidget.py"])
|
root(["test_base_dockwidget.py"])
|
||||||
class root rootnode
|
class root rootnode
|
||||||
@@ -592,21 +592,26 @@
|
|||||||
classDef groupnode fill:#cfe0da,stroke:#5c8a7d,stroke-width:1px,color:#152420;
|
classDef groupnode fill:#cfe0da,stroke:#5c8a7d,stroke-width:1px,color:#152420;
|
||||||
classDef ok fill:#dcefdc,stroke:#3f7d4a,stroke-width:1px,color:#1c3a20;
|
classDef ok fill:#dcefdc,stroke:#3f7d4a,stroke-width:1px,color:#1c3a20;
|
||||||
classDef warn fill:#f6ead9,stroke:#b5722a,stroke-width:1px,color:#4a2c08;
|
classDef warn fill:#f6ead9,stroke:#b5722a,stroke-width:1px,color:#4a2c08;
|
||||||
classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;</pre></div><table class="test-table"><thead><tr><th>Testfall</th><th>prüft</th><th>Status</th><th>geprüft</th></tr></thead><tbody><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_leere_eingabe</span></td><td>Prüft, dass eine leere Eingabe ohne Netzwerk-/Dateizugriff als 'leer' abgelehnt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_remote_link_ok</span></td><td>Prüft, dass eine erreichbare Remote-URL (HTTP HEAD ohne Fehler) als 'ok' bestätigt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_remote_link_error</span></td><td>Prüft, dass eine Remote-URL mit Fehlerantwort als 'url_nicht_erreichbar' abgelehnt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_remote_link_network_error</span></td><td>Prüft, dass eine ausbleibende Netzwerkantwort (None) als 'netzwerkfehler' gemeldet wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_local_link_not_found</span></td><td>Prüft, dass ein nicht existierender lokaler Pfad als 'pfad_nicht_gefunden' abgelehnt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_local_link_ok</span></td><td>Prüft, dass ein existierender lokaler Pfad als 'ok' bestätigt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr></tbody></table></div></article><article class="filecard" data-search="plugin_sn_basis/tests/test_ly_existence_wrapper.py layerisvalidtests test_none_ist_nicht_gueltig layerisvalidtests test_objekt_ohne_isvalid_ist_nicht_gueltig layerisvalidtests test_gueltiger_layer_liefert_true layerisvalidtests test_ungueltiger_layer_liefert_false layerisvalidtests test_ausnahme_bei_isvalid_liefert_false layerisusabletests test_none_ist_nicht_nutzbar layerisusabletests test_gueltiger_layer_ist_nutzbar layerisusabletests test_ungueltiger_layer_ist_nicht_nutzbar" data-hasred="0" data-hasskip="0" data-nodoc="0" data-ungeprueft="1" data-veraltet="0"><button class="card-toggle" data-target="plugin-sn-basis-tests-test-ly-existence-wrapper-py" aria-expanded="false"><span class="card-path mono">Plugin_SN_Basis/tests/test_ly_existence_wrapper.py</span><span class="card-meta"><span class="count-total">8 Testfälle</span><span class="cpill cpill-ok">8</span><span class="docbadge" title="Anteil mit Docstring">100% beschrieben</span><span class="auditbadge" title="Anteil fachlich aktuell geprüft">0% geprüft</span><span class="chev" aria-hidden="true">▾</span></span></button><div class="card-body" id="body-plugin-sn-basis-tests-test-ly-existence-wrapper-py"><p class="filedesc">Tests für sn_basis/functions/ly_existence_wrapper.py::layer_is_valid/layer_is_usable (Issue #65).</p><div class="gchips"><span class="gchip" title="">LayerIsValidTests <b>5</b></span><span class="gchip" title="">LayerIsUsableTests <b>3</b></span></div><div class="diagram-wrap"><pre class="mermaid">flowchart TD
|
classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;</pre></div><table class="test-table"><thead><tr><th>Testfall</th><th>prüft</th><th>Status</th><th>geprüft</th></tr></thead><tbody><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_leere_eingabe</span></td><td>Prüft, dass eine leere Eingabe ohne Netzwerk-/Dateizugriff als 'leer' abgelehnt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_remote_link_ok</span></td><td>Prüft, dass eine erreichbare Remote-URL (HTTP HEAD ohne Fehler) als 'ok' bestätigt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_remote_link_error</span></td><td>Prüft, dass eine Remote-URL mit Fehlerantwort als 'url_nicht_erreichbar' abgelehnt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_remote_link_network_error</span></td><td>Prüft, dass eine ausbleibende Netzwerkantwort (None) als 'netzwerkfehler' gemeldet wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_local_link_not_found</span></td><td>Prüft, dass ein nicht existierender lokaler Pfad als 'pfad_nicht_gefunden' abgelehnt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr><tr><td class="mono">TestLinkpruefer<br><span class="testname">test_local_link_ok</span></td><td>Prüft, dass ein existierender lokaler Pfad als 'ok' bestätigt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-17</span></td></tr></tbody></table></div></article><article class="filecard" data-search="plugin_sn_basis/tests/test_ly_existence_wrapper.py layerexiststests test_none_existiert_nicht layerexiststests test_vorhandenes_objekt_existiert layerexiststests test_ungueltiger_layer_existiert_trotzdem layerisvalidtests test_none_ist_nicht_gueltig layerisvalidtests test_objekt_ohne_isvalid_ist_nicht_gueltig layerisvalidtests test_gueltiger_layer_liefert_true layerisvalidtests test_ungueltiger_layer_liefert_false layerisvalidtests test_ausnahme_bei_isvalid_liefert_false layerisusabletests test_none_ist_nicht_nutzbar layerisusabletests test_gueltiger_layer_ist_nutzbar layerisusabletests test_ungueltiger_layer_ist_nicht_nutzbar" data-hasred="0" data-hasskip="0" data-nodoc="0" data-ungeprueft="0" data-veraltet="0"><button class="card-toggle" data-target="plugin-sn-basis-tests-test-ly-existence-wrapper-py" aria-expanded="false"><span class="card-path mono">Plugin_SN_Basis/tests/test_ly_existence_wrapper.py</span><span class="card-meta"><span class="count-total">11 Testfälle</span><span class="cpill cpill-ok">11</span><span class="docbadge" title="Anteil mit Docstring">100% beschrieben</span><span class="auditbadge" title="Anteil fachlich aktuell geprüft">100% geprüft</span><span class="chev" aria-hidden="true">▾</span></span></button><div class="card-body" id="body-plugin-sn-basis-tests-test-ly-existence-wrapper-py"><p class="filedesc">Tests für sn_basis/functions/ly_existence_wrapper.py::layer_exists/layer_is_valid/layer_is_usable (Issue #65, #76).</p><div class="gchips"><span class="gchip" title="">LayerExistsTests <b>3</b></span><span class="gchip" title="">LayerIsValidTests <b>5</b></span><span class="gchip" title="">LayerIsUsableTests <b>3</b></span></div><div class="diagram-wrap"><pre class="mermaid">flowchart TD
|
||||||
root(["test_ly_existence_wrapper.py"])
|
root(["test_ly_existence_wrapper.py"])
|
||||||
class root rootnode
|
class root rootnode
|
||||||
root --> g1["LayerIsValidTests (5)"]
|
root --> g1["LayerExistsTests (3)"]
|
||||||
class g1 groupnode
|
class g1 groupnode
|
||||||
g1 --> t1("none_ist_nicht_gueltig")
|
g1 --> t1("none_existiert_nicht")
|
||||||
g1 --> t2("objekt_ohne_isvalid_ist_nicht_gueltig")
|
g1 --> t2("vorhandenes_objekt_existiert")
|
||||||
g1 --> t3("gueltiger_layer_liefert_true")
|
g1 --> t3("ungueltiger_layer_existiert_trotzdem")
|
||||||
g1 --> t4("ungueltiger_layer_liefert_false")
|
root --> g2["LayerIsValidTests (5)"]
|
||||||
g1 --> t5("ausnahme_bei_isvalid_liefert_false")
|
|
||||||
root --> g2["LayerIsUsableTests (3)"]
|
|
||||||
class g2 groupnode
|
class g2 groupnode
|
||||||
g2 --> t6("none_ist_nicht_nutzbar")
|
g2 --> t4("none_ist_nicht_gueltig")
|
||||||
g2 --> t7("gueltiger_layer_ist_nutzbar")
|
g2 --> t5("objekt_ohne_isvalid_ist_nicht_gueltig")
|
||||||
g2 --> t8("ungueltiger_layer_ist_nicht_nutzbar")
|
g2 --> t6("gueltiger_layer_liefert_true")
|
||||||
|
g2 --> t7("ungueltiger_layer_liefert_false")
|
||||||
|
g2 --> t8("ausnahme_bei_isvalid_liefert_false")
|
||||||
|
root --> g3["LayerIsUsableTests (3)"]
|
||||||
|
class g3 groupnode
|
||||||
|
g3 --> t9("none_ist_nicht_nutzbar")
|
||||||
|
g3 --> t10("gueltiger_layer_ist_nutzbar")
|
||||||
|
g3 --> t11("ungueltiger_layer_ist_nicht_nutzbar")
|
||||||
class t1 ok
|
class t1 ok
|
||||||
class t2 ok
|
class t2 ok
|
||||||
class t3 ok
|
class t3 ok
|
||||||
@@ -615,11 +620,14 @@
|
|||||||
class t6 ok
|
class t6 ok
|
||||||
class t7 ok
|
class t7 ok
|
||||||
class t8 ok
|
class t8 ok
|
||||||
|
class t9 ok
|
||||||
|
class t10 ok
|
||||||
|
class t11 ok
|
||||||
classDef rootnode fill:#1f4038,stroke:#16302a,stroke-width:1px,color:#f4f1e8,font-weight:600;
|
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 groupnode fill:#cfe0da,stroke:#5c8a7d,stroke-width:1px,color:#152420;
|
||||||
classDef ok fill:#dcefdc,stroke:#3f7d4a,stroke-width:1px,color:#1c3a20;
|
classDef ok fill:#dcefdc,stroke:#3f7d4a,stroke-width:1px,color:#1c3a20;
|
||||||
classDef warn fill:#f6ead9,stroke:#b5722a,stroke-width:1px,color:#4a2c08;
|
classDef warn fill:#f6ead9,stroke:#b5722a,stroke-width:1px,color:#4a2c08;
|
||||||
classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;</pre></div><table class="test-table"><thead><tr><th>Testfall</th><th>prüft</th><th>Status</th><th>geprüft</th></tr></thead><tbody><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_none_ist_nicht_gueltig</span></td><td>Prüft, dass layer_is_valid für None False liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_objekt_ohne_isvalid_ist_nicht_gueltig</span></td><td>Prüft, dass ein Objekt ohne isValid()-Methode als ungültig gilt.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_gueltiger_layer_liefert_true</span></td><td>Prüft, dass ein Layer mit isValid()==True als gültig erkannt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_ungueltiger_layer_liefert_false</span></td><td>Prüft, dass ein Layer mit isValid()==False als ungültig erkannt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_ausnahme_bei_isvalid_liefert_false</span></td><td>Prüft, dass eine Ausnahme in isValid() abgefangen wird und False liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr><tr><td class="mono">LayerIsUsableTests<br><span class="testname">test_none_ist_nicht_nutzbar</span></td><td>Prüft, dass layer_is_usable für None False liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr><tr><td class="mono">LayerIsUsableTests<br><span class="testname">test_gueltiger_layer_ist_nutzbar</span></td><td>Prüft, dass ein vorhandener, gültiger Layer als nutzbar gilt.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr><tr><td class="mono">LayerIsUsableTests<br><span class="testname">test_ungueltiger_layer_ist_nicht_nutzbar</span></td><td>Prüft, dass ein vorhandener, aber ungültiger Layer als nicht nutzbar gilt.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-skip">nie geprüft</span></td></tr></tbody></table></div></article><article class="filecard" data-search="plugin_sn_basis/tests/test_ly_style_wrapper.py applystylefrompathtests test_fehlender_layer_liefert_false applystylefrompathtests test_erfolgreiches_laden_liefert_true_und_triggert_repaint applystylefrompathtests test_fehlgeschlagenes_laden_liefert_false_ohne_repaint applystylefrompathtests test_ausnahme_beim_laden_wird_abgefangen" data-hasred="0" data-hasskip="0" data-nodoc="0" data-ungeprueft="1" data-veraltet="0"><button class="card-toggle" data-target="plugin-sn-basis-tests-test-ly-style-wrapper-py" aria-expanded="false"><span class="card-path mono">Plugin_SN_Basis/tests/test_ly_style_wrapper.py</span><span class="card-meta"><span class="count-total">4 Testfälle</span><span class="cpill cpill-ok">4</span><span class="docbadge" title="Anteil mit Docstring">100% beschrieben</span><span class="auditbadge" title="Anteil fachlich aktuell geprüft">0% geprüft</span><span class="chev" aria-hidden="true">▾</span></span></button><div class="card-body" id="body-plugin-sn-basis-tests-test-ly-style-wrapper-py"><p class="filedesc">Tests für sn_basis/functions/ly_style_wrapper.py::apply_style_from_path (Issue #65).</p><div class="gchips"><span class="gchip" title="">ApplyStyleFromPathTests <b>4</b></span></div><div class="diagram-wrap"><pre class="mermaid">flowchart TD
|
classDef skip fill:#e6e6ee,stroke:#6f7285,stroke-width:1px,color:#2b2d38;</pre></div><table class="test-table"><thead><tr><th>Testfall</th><th>prüft</th><th>Status</th><th>geprüft</th></tr></thead><tbody><tr><td class="mono">LayerExistsTests<br><span class="testname">test_none_existiert_nicht</span></td><td>Prüft, dass layer_exists für None False liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerExistsTests<br><span class="testname">test_vorhandenes_objekt_existiert</span></td><td>Prüft, dass layer_exists für ein vorhandenes Layer-Objekt True liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerExistsTests<br><span class="testname">test_ungueltiger_layer_existiert_trotzdem</span></td><td>Prüft, dass layer_exists die Gültigkeit nicht bewertet: ein ungültiger Layer gilt als vorhanden.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_none_ist_nicht_gueltig</span></td><td>Prüft, dass layer_is_valid für None False liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_objekt_ohne_isvalid_ist_nicht_gueltig</span></td><td>Prüft, dass ein Objekt ohne isValid()-Methode als ungültig gilt.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_gueltiger_layer_liefert_true</span></td><td>Prüft, dass ein Layer mit isValid()==True als gültig erkannt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_ungueltiger_layer_liefert_false</span></td><td>Prüft, dass ein Layer mit isValid()==False als ungültig erkannt wird.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsValidTests<br><span class="testname">test_ausnahme_bei_isvalid_liefert_false</span></td><td>Prüft, dass eine Ausnahme in isValid() abgefangen wird und False liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsUsableTests<br><span class="testname">test_none_ist_nicht_nutzbar</span></td><td>Prüft, dass layer_is_usable für None False liefert.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsUsableTests<br><span class="testname">test_gueltiger_layer_ist_nutzbar</span></td><td>Prüft, dass ein vorhandener, gültiger Layer als nutzbar gilt.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr><tr><td class="mono">LayerIsUsableTests<br><span class="testname">test_ungueltiger_layer_ist_nicht_nutzbar</span></td><td>Prüft, dass ein vorhandener, aber ungültiger Layer als nicht nutzbar gilt.</td><td><span class="pill pill-ok">grün</span></td><td><span class="pill pill-pr-ok">geprüft am 2026-09-23</span></td></tr></tbody></table></div></article><article class="filecard" data-search="plugin_sn_basis/tests/test_ly_style_wrapper.py applystylefrompathtests test_fehlender_layer_liefert_false applystylefrompathtests test_erfolgreiches_laden_liefert_true_und_triggert_repaint applystylefrompathtests test_fehlgeschlagenes_laden_liefert_false_ohne_repaint applystylefrompathtests test_ausnahme_beim_laden_wird_abgefangen" data-hasred="0" data-hasskip="0" data-nodoc="0" data-ungeprueft="1" data-veraltet="0"><button class="card-toggle" data-target="plugin-sn-basis-tests-test-ly-style-wrapper-py" aria-expanded="false"><span class="card-path mono">Plugin_SN_Basis/tests/test_ly_style_wrapper.py</span><span class="card-meta"><span class="count-total">4 Testfälle</span><span class="cpill cpill-ok">4</span><span class="docbadge" title="Anteil mit Docstring">100% beschrieben</span><span class="auditbadge" title="Anteil fachlich aktuell geprüft">0% geprüft</span><span class="chev" aria-hidden="true">▾</span></span></button><div class="card-body" id="body-plugin-sn-basis-tests-test-ly-style-wrapper-py"><p class="filedesc">Tests für sn_basis/functions/ly_style_wrapper.py::apply_style_from_path (Issue #65).</p><div class="gchips"><span class="gchip" title="">ApplyStyleFromPathTests <b>4</b></span></div><div class="diagram-wrap"><pre class="mermaid">flowchart TD
|
||||||
root(["test_ly_style_wrapper.py"])
|
root(["test_ly_style_wrapper.py"])
|
||||||
class root rootnode
|
class root rootnode
|
||||||
root --> g1["ApplyStyleFromPathTests (4)"]
|
root --> g1["ApplyStyleFromPathTests (4)"]
|
||||||
|
|||||||
+21
-17
@@ -8,21 +8,21 @@ für die fachliche Frage, ob die Abdeckung sinnvoll ist. Die Angaben stammen aus
|
|||||||
selbst (Docstrings) und aus der Testbaseline.
|
selbst (Docstrings) und aus der Testbaseline.
|
||||||
|
|
||||||
Stand der Baseline: `docs/status/testbaseline.json` (SHA-256 `aeabc946a7f3`)
|
Stand der Baseline: `docs/status/testbaseline.json` (SHA-256 `aeabc946a7f3`)
|
||||||
Stand des Prüf-Audits: `docs/status/testpruefungen.json` (SHA-256 `2f7e27c76ee7`)
|
Stand des Prüf-Audits: `docs/status/testpruefungen.json` (SHA-256 `4d0c4430fa9f`)
|
||||||
|
|
||||||
Gesamt: 3 Pakete, 49 Testdateien, 592 Testfälle – 549 grün, 35 rot (Baseline), 8 übersprungen.
|
Gesamt: 3 Pakete, 49 Testdateien, 595 Testfälle – 552 grün, 35 rot (Baseline), 8 übersprungen.
|
||||||
Mit Beschreibung (Docstring): 447 von 592 (76 %).
|
Mit Beschreibung (Docstring): 450 von 595 (76 %).
|
||||||
Fachlich geprüft: 160 von 592 (27 %) aktuell, 0 veraltet seit Codeänderung, 432 nie geprüft.
|
Fachlich geprüft: 171 von 595 (29 %) aktuell, 0 veraltet seit Codeänderung, 424 nie geprüft.
|
||||||
Strukturelle Lücken (heuristisch, Namensabgleich): 145 von 413 (35 %) Funktionen/Methoden ohne erkennbaren Testbezug – Abschnitt „Ungetestete Funktionen“.
|
Strukturelle Lücken (heuristisch, Namensabgleich): 145 von 413 (35 %) Funktionen/Methoden ohne erkennbaren Testbezug – Abschnitt „Ungetestete Funktionen“.
|
||||||
|
|
||||||
## Zusammenfassung
|
## Zusammenfassung
|
||||||
|
|
||||||
| Paket | Testdateien | Testfälle | grün | rot (Baseline) | übersprungen | mit Beschreibung | fachlich geprüft | ohne Testbezug |
|
| Paket | Testdateien | Testfälle | grün | rot (Baseline) | übersprungen | mit Beschreibung | fachlich geprüft | ohne Testbezug |
|
||||||
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
|
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
|
||||||
| `sn_basis` | 32 | 340 | 340 | 0 | 0 | 340 von 340 (100 %) | 160 von 340 (47 %) | 72 von 229 (31 %) |
|
| `sn_basis` | 32 | 343 | 343 | 0 | 0 | 343 von 343 (100 %) | 171 von 343 (50 %) | 72 von 229 (31 %) |
|
||||||
| `sn_verfahrensgebiet` | 12 | 208 | 166 | 34 | 8 | 106 von 208 (51 %) | 0 von 208 (0 %) | 34 von 104 (33 %) |
|
| `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 %) |
|
| `sn_plan41` | 5 | 44 | 43 | 1 | 0 | 1 von 44 (2 %) | 0 von 44 (0 %) | 39 von 80 (49 %) |
|
||||||
| **Summe** | **49** | **592** | **549** | **35** | **8** | **447 von 592 (76 %)** | **160 von 592 (27 %)** | **145 von 413 (35 %)** |
|
| **Summe** | **49** | **595** | **552** | **35** | **8** | **450 von 595 (76 %)** | **171 von 595 (29 %)** | **145 von 413 (35 %)** |
|
||||||
|
|
||||||
### Legende
|
### Legende
|
||||||
|
|
||||||
@@ -36,7 +36,7 @@ Strukturelle Lücken (heuristisch, Namensabgleich): 145 von 413 (35 %) Funktione
|
|||||||
|
|
||||||
## Paket `sn_basis`
|
## Paket `sn_basis`
|
||||||
|
|
||||||
Plattform-Plugin, Ordner `Plugin_SN_Basis` – 32 Testdateien mit 340 Testfällen (340 grün, 0 rot, 0 übersprungen).
|
Plattform-Plugin, Ordner `Plugin_SN_Basis` – 32 Testdateien mit 343 Testfällen (343 grün, 0 rot, 0 übersprungen).
|
||||||
|
|
||||||
### `Plugin_SN_Basis/tests/test_base_dockwidget.py`
|
### `Plugin_SN_Basis/tests/test_base_dockwidget.py`
|
||||||
|
|
||||||
@@ -338,23 +338,27 @@ Testgruppen:
|
|||||||
|
|
||||||
### `Plugin_SN_Basis/tests/test_ly_existence_wrapper.py`
|
### `Plugin_SN_Basis/tests/test_ly_existence_wrapper.py`
|
||||||
|
|
||||||
Worum es in der Datei geht: Tests für sn_basis/functions/ly_existence_wrapper.py::layer_is_valid/layer_is_usable (Issue #65).
|
Worum es in der Datei geht: Tests für sn_basis/functions/ly_existence_wrapper.py::layer_exists/layer_is_valid/layer_is_usable (Issue #65, #76).
|
||||||
|
|
||||||
Testgruppen:
|
Testgruppen:
|
||||||
|
|
||||||
|
- `LayerExistsTests` (3 Testfälle): — (Docstring fehlt)
|
||||||
- `LayerIsValidTests` (5 Testfälle): — (Docstring fehlt)
|
- `LayerIsValidTests` (5 Testfälle): — (Docstring fehlt)
|
||||||
- `LayerIsUsableTests` (3 Testfälle): — (Docstring fehlt)
|
- `LayerIsUsableTests` (3 Testfälle): — (Docstring fehlt)
|
||||||
|
|
||||||
| Testfall | prüft | Status | geprüft |
|
| Testfall | prüft | Status | geprüft |
|
||||||
| --- | --- | --- | --- |
|
| --- | --- | --- | --- |
|
||||||
| `LayerIsValidTests.test_none_ist_nicht_gueltig` | Prüft, dass layer_is_valid für None False liefert. | grün | nie geprüft |
|
| `LayerExistsTests.test_none_existiert_nicht` | Prüft, dass layer_exists für None False liefert. | grün | geprüft am 2026-09-23 |
|
||||||
| `LayerIsValidTests.test_objekt_ohne_isvalid_ist_nicht_gueltig` | Prüft, dass ein Objekt ohne isValid()-Methode als ungültig gilt. | grün | nie geprüft |
|
| `LayerExistsTests.test_vorhandenes_objekt_existiert` | Prüft, dass layer_exists für ein vorhandenes Layer-Objekt True liefert. | grün | geprüft am 2026-09-23 |
|
||||||
| `LayerIsValidTests.test_gueltiger_layer_liefert_true` | Prüft, dass ein Layer mit isValid()==True als gültig erkannt wird. | grün | nie geprüft |
|
| `LayerExistsTests.test_ungueltiger_layer_existiert_trotzdem` | Prüft, dass layer_exists die Gültigkeit nicht bewertet: ein ungültiger Layer gilt als vorhanden. | grün | geprüft am 2026-09-23 |
|
||||||
| `LayerIsValidTests.test_ungueltiger_layer_liefert_false` | Prüft, dass ein Layer mit isValid()==False als ungültig erkannt wird. | grün | nie geprüft |
|
| `LayerIsValidTests.test_none_ist_nicht_gueltig` | Prüft, dass layer_is_valid für None False liefert. | grün | geprüft am 2026-09-23 |
|
||||||
| `LayerIsValidTests.test_ausnahme_bei_isvalid_liefert_false` | Prüft, dass eine Ausnahme in isValid() abgefangen wird und False liefert. | grün | nie geprüft |
|
| `LayerIsValidTests.test_objekt_ohne_isvalid_ist_nicht_gueltig` | Prüft, dass ein Objekt ohne isValid()-Methode als ungültig gilt. | grün | geprüft am 2026-09-23 |
|
||||||
| `LayerIsUsableTests.test_none_ist_nicht_nutzbar` | Prüft, dass layer_is_usable für None False liefert. | grün | nie geprüft |
|
| `LayerIsValidTests.test_gueltiger_layer_liefert_true` | Prüft, dass ein Layer mit isValid()==True als gültig erkannt wird. | grün | geprüft am 2026-09-23 |
|
||||||
| `LayerIsUsableTests.test_gueltiger_layer_ist_nutzbar` | Prüft, dass ein vorhandener, gültiger Layer als nutzbar gilt. | grün | nie geprüft |
|
| `LayerIsValidTests.test_ungueltiger_layer_liefert_false` | Prüft, dass ein Layer mit isValid()==False als ungültig erkannt wird. | grün | geprüft am 2026-09-23 |
|
||||||
| `LayerIsUsableTests.test_ungueltiger_layer_ist_nicht_nutzbar` | Prüft, dass ein vorhandener, aber ungültiger Layer als nicht nutzbar gilt. | grün | nie geprüft |
|
| `LayerIsValidTests.test_ausnahme_bei_isvalid_liefert_false` | Prüft, dass eine Ausnahme in isValid() abgefangen wird und False liefert. | grün | geprüft am 2026-09-23 |
|
||||||
|
| `LayerIsUsableTests.test_none_ist_nicht_nutzbar` | Prüft, dass layer_is_usable für None False liefert. | grün | geprüft am 2026-09-23 |
|
||||||
|
| `LayerIsUsableTests.test_gueltiger_layer_ist_nutzbar` | Prüft, dass ein vorhandener, gültiger Layer als nutzbar gilt. | grün | geprüft am 2026-09-23 |
|
||||||
|
| `LayerIsUsableTests.test_ungueltiger_layer_ist_nicht_nutzbar` | Prüft, dass ein vorhandener, aber ungültiger Layer als nicht nutzbar gilt. | grün | geprüft am 2026-09-23 |
|
||||||
|
|
||||||
### `Plugin_SN_Basis/tests/test_ly_style_wrapper.py`
|
### `Plugin_SN_Basis/tests/test_ly_style_wrapper.py`
|
||||||
|
|
||||||
@@ -1262,7 +1266,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,
|
aus dem Quelltext erschließen. Jeder Eintrag braucht eine einzeilige Beschreibung im Testfall,
|
||||||
dann verschwindet er hier von selbst.
|
dann verschwindet er hier von selbst.
|
||||||
|
|
||||||
### `sn_basis` – 0 von 340 Testfällen ohne Beschreibung
|
### `sn_basis` – 0 von 343 Testfällen ohne Beschreibung
|
||||||
|
|
||||||
Keine Lücken.
|
Keine Lücken.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user