*/ public function modulReadmes(): array { return [ ['Batterie'], ['Pufferspeicher'], ['Verbraucher-1-Stufig'], ['Waermepumpe'], ['Ladestation-Stand-Alone'], ['Ladestation-Gateway'], ['Easee-Gateway'], ]; } /** @dataProvider modulReadmes */ public function testJederModulentwurfHatEinReadme(string $modul): void { $pfad = __DIR__ . '/../docs/module/' . $modul . '/README.md'; self::assertFileExists($pfad); $inhalt = file_get_contents($pfad); self::assertNotFalse($inhalt); self::assertStringContainsString('Status: Diskussionsentwurf', $inhalt); self::assertStringContainsString('Properties', $inhalt); } public function testSchnittstellenDokumentiertSind(): void { self::assertFileExists(__DIR__ . '/../docs/Schnittstelle.md'); self::assertFileExists(__DIR__ . '/../docs/Obere-Anschluesse.md'); self::assertFileExists(__DIR__ . '/../libs/VerbraucherBasisTrait.php'); } public function testManagerDokumentiertDenImplementiertenStand(): void { $inhalt = file_get_contents(__DIR__ . '/../docs/module/Manager/README.md'); self::assertNotFalse($inhalt); self::assertStringContainsString('Status: Implementiert', $inhalt); self::assertStringContainsString('Verteilalgorithmus', $inhalt); } public function testWarmwassererwaermerDokumentiertDenImplementiertenStand(): void { $inhalt = file_get_contents(__DIR__ . '/../docs/module/Wassererwaermer/README.md'); self::assertNotFalse($inhalt); self::assertStringContainsString('Status: implementiert', $inhalt); self::assertStringContainsString('Properties', $inhalt); self::assertStringContainsString('Managerkommunikation', $inhalt); } }