Diagnosevariablen bedarfsgesteuert anlegen
Tests / test (push) Successful in 43s

This commit is contained in:
dh
2026-09-17 08:54:17 +00:00
parent 4514ccb557
commit 9e6a675b25
5 changed files with 183 additions and 73 deletions
+19 -2
View File
@@ -55,14 +55,18 @@ final class WarmwassererwaermerModulstrukturTest extends TestCase
self::assertStringNotContainsString("RegisterPropertyInteger('ManagerID'", $inhalt);
}
public function testZehnDiagnosevariablenWerdenBedarfsgesteuertAngelegtUndGeloescht(): void
public function testSechzehnDiagnosevariablenWerdenBedarfsgesteuertAngelegtUndGeloescht(): void
{
$inhalt = (string) file_get_contents(self::MODULPFAD . 'module.php');
preg_match('/private const DIAGNOSE_VARIABLEN = \[(.*?)\];/s', $inhalt, $treffer);
self::assertArrayHasKey(1, $treffer);
preg_match_all('/\'([^\']+)\'/', $treffer[1], $variablen);
self::assertCount(10, $variablen[1]);
self::assertCount(16, $variablen[1]);
foreach (['Istleistung', 'Sollleistung', 'Stoerung', 'Stoertext', 'AktiveStufe', 'BezogeneEnergie'] as $ident) {
self::assertContains($ident, $variablen[1]);
self::assertStringContainsString("Zustand" . $ident, $inhalt);
}
self::assertStringContainsString("ReadPropertyBoolean('DiagnosevariablenAnzeigen')", $inhalt);
self::assertStringContainsString('registriereVerbraucherDiagnose', $inhalt);
self::assertStringContainsString('UnregisterVariable($ident)', $inhalt);
@@ -70,6 +74,19 @@ final class WarmwassererwaermerModulstrukturTest extends TestCase
self::assertStringNotContainsString("case 'LogStatus':", $inhalt);
}
public function testLegionellentemperaturWirdNurBeiAktiverFunktionAngelegt(): void
{
$inhalt = (string) file_get_contents(self::MODULPFAD . 'module.php');
self::assertStringContainsString("ReadPropertyBoolean('LegionellenfunktionAktiv')", $inhalt);
self::assertStringContainsString(
"RegisterVariableFloat('Legionellentemperatur'",
$inhalt
);
self::assertStringContainsString("UnregisterVariable('Legionellentemperatur')", $inhalt);
self::assertStringContainsString("ZustandLegionellentemperatur", $inhalt);
}
public function testFormularIstWieGewuenschtGegliedertUndHatKeineAktionsknoepfe(): void
{
$formular = json_decode(