Problem
local_adele/lib.php und mod_adele/lib.php enthalten neben Moodle-Callbacks umfangreiche Rollen-, Datei-, Index- und Synchronisationslogik sowie direkte HTML-Erzeugung.
Ursache
Legacy-Callbackdateien wurden als allgemeine Servicecontainer verwendet.
Lösung
- Callbacks auf Parameterübernahme und Delegation reduzieren.
- Business-Logik in namespaced Services verschieben.
- HTML über Renderer und Mustache erzeugen.
- DB-Zugriffe aus Callbackfunktionen entfernen.
- Für neue Moodle-Versionen passende Hooks prüfen.
Manuelles Testverfahren
Testschritte
- Alle Moodle-Callbacks nach Refactoring auslösen.
- Navbar, Pluginfile, Aktivitäts-Lifecycle und Host-Index prüfen.
Aktuelles Ist-Verhalten
local_adele/lib.php und mod_adele/lib.php enthalten neben Moodle-Callbacks umfangreiche Rollen-, Datei-, Index- und Synchronisationslogik sowie direkte HTML-Erzeugung.
Erwartetes Soll-Verhalten
lib.php enthält nur notwendige Callbacks und kleine Adapter.
Automatisierte Tests
- Unit-Tests der neuen Services.
- Behat-Smoke für Callbackpfade.
Akzeptanzkriterien
Problem
local_adele/lib.phpundmod_adele/lib.phpenthalten neben Moodle-Callbacks umfangreiche Rollen-, Datei-, Index- und Synchronisationslogik sowie direkte HTML-Erzeugung.Ursache
Legacy-Callbackdateien wurden als allgemeine Servicecontainer verwendet.
Lösung
Manuelles Testverfahren
Testschritte
Aktuelles Ist-Verhalten
local_adele/lib.phpundmod_adele/lib.phpenthalten neben Moodle-Callbacks umfangreiche Rollen-, Datei-, Index- und Synchronisationslogik sowie direkte HTML-Erzeugung.Erwartetes Soll-Verhalten
lib.phpenthält nur notwendige Callbacks und kleine Adapter.Automatisierte Tests
Akzeptanzkriterien
lib.phpenthält nur notwendige Callbacks und kleine Adapter.