36 lines
1.2 KiB
PHP
36 lines
1.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Belevo\EnelixUtils\Tests;
|
|
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
final class DokumentationsstrukturTest extends TestCase
|
|
{
|
|
/** @return array<string, array{string, string}> */
|
|
public function modulReadmes(): array
|
|
{
|
|
return [
|
|
'Verbrauchskostenreport' => ['Verbrauchskostenreport', 'Status: Implementiert'],
|
|
'Virtuelle Batterie' => ['Virtuelle-Batterie', 'Status: Diskussionsentwurf'],
|
|
'CC100 Hardware' => ['CC100-Hardware', 'Status: Diskussionsentwurf'],
|
|
'Energiediagramm' => ['Energiediagramm', 'Status: Implementiert'],
|
|
'VGT-Schnittstelle' => ['VGT-Schnittstelle', 'Status: Diskussionsentwurf'],
|
|
'Shelly-Modul' => ['Shelly-Modul', 'Status: Implementiert'],
|
|
];
|
|
}
|
|
|
|
/** @dataProvider modulReadmes */
|
|
public function testJedesModulHatEinReadmeMitErwartetemStatus(string $modul, string $status): void
|
|
{
|
|
$pfad = __DIR__ . '/../docs/module/' . $modul . '/README.md';
|
|
self::assertFileExists($pfad);
|
|
|
|
$inhalt = file_get_contents($pfad);
|
|
self::assertNotFalse($inhalt);
|
|
self::assertStringContainsString($status, $inhalt);
|
|
self::assertStringContainsString('Properties', $inhalt);
|
|
}
|
|
}
|