*/ public function module(): array { return [ 'Virtuelle Batterie' => [ 'VirtuelleBatterie', 'Virtuelle Batterie', 'ENLVB', ], 'VGT-Schnittstelle' => [ 'VGTSchnittstelle', 'VGTSchnittstelle', 'ENLVGT', ], ]; } public function testVirtuelleBatterieStelltEVProxyregisterBereit(): void { $modul = (string) file_get_contents( __DIR__ . '/../VirtuelleBatterie/module.php' ); foreach ([ "'EVManagement'", "'EVModus'", "'EVLadeleistung'", "'EVEntladeleistung'", "'SDLSollleistung'", 'VirtuelleBatterieRegler::kombiniere', ] as $bestandteil) { self::assertStringContainsString($bestandteil, $modul); } } public function testPhysischeSollwerteWerdenNurPerActionGeschrieben(): void { $modul = (string) file_get_contents( __DIR__ . '/../VirtuelleBatterie/module.php' ); $anfang = strpos($modul, 'private function schreibeVerteilung'); $ende = strpos($modul, 'private function sichererZustand'); self::assertNotFalse($anfang); self::assertNotFalse($ende); $funktion = substr($modul, $anfang, $ende - $anfang); self::assertStringContainsString('RequestAction(', $funktion); self::assertStringNotContainsString('SetValue($zielID', $funktion); } }