feat(manager): Energieaufzeichnung und Visualisierungen integrieren
Tests / test (push) Successful in 47s
Tests / test (push) Successful in 47s
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Belevo\EnelixEMS\Tests;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
final class ManagerEnergieModulstrukturTest extends TestCase
|
||||
{
|
||||
public function testManagerKonfiguriertMessquellenUndArchivregeln(): void
|
||||
{
|
||||
$modul = (string) file_get_contents(__DIR__ . '/../Manager/module.php');
|
||||
$trait = (string) file_get_contents(__DIR__ . '/../libs/ManagerEnergieTrait.php');
|
||||
$formular = (string) file_get_contents(__DIR__ . '/../Manager/form.json');
|
||||
|
||||
foreach ([
|
||||
"RegisterPropertyBoolean('EnergyPieAnzeigen', false)",
|
||||
"RegisterPropertyBoolean('EnergiediagrammeAnzeigen', false)",
|
||||
"RegisterPropertyBoolean('FunFactsAnzeigen', false)",
|
||||
"RegisterPropertyBoolean('EnergieflussAnzeigen', false)",
|
||||
"RegisterPropertyInteger('LeistungsaufzeichnungMinuten', 1)",
|
||||
"RegisterPropertyInteger('LeistungLoeschenMonate', 12)",
|
||||
"RegisterPropertyInteger('EnergieaufzeichnungMinuten', 5)",
|
||||
"RegisterPropertyInteger('EnergieVerdichtenMonate', 12)",
|
||||
"RegisterPropertyInteger('EnergieLoeschenMonate', 0)",
|
||||
] as $erwartet) {
|
||||
self::assertStringContainsString($erwartet, $modul);
|
||||
}
|
||||
foreach ([
|
||||
'AC_SetLoggingStatus',
|
||||
'AC_SetAggregationType',
|
||||
'AC_SetCompaction',
|
||||
'AC_ReAggregateVariable',
|
||||
'IPS_CreateMedia(4)',
|
||||
'IPS_SetMediaContent',
|
||||
'ENERGY_PIE_MODULE_ID',
|
||||
'ENERGY_FLOW_MODULE_ID',
|
||||
'energieflussKnoten',
|
||||
'IPS_DeleteInstance',
|
||||
'IPS_DeleteMedia',
|
||||
] as $erwartet) {
|
||||
self::assertStringContainsString($erwartet, $modul . $trait);
|
||||
}
|
||||
foreach ([
|
||||
'Energieaufzeichnung',
|
||||
'FormEnergyPieAnzeigen',
|
||||
'FormEnergiediagrammeAnzeigen',
|
||||
'FormFunFactsAnzeigen',
|
||||
'FormEnergieflussAnzeigen',
|
||||
'MesswerteAnzeigen',
|
||||
'IstleistungVariableID',
|
||||
'LeistungVariableID',
|
||||
'SOCVariableID',
|
||||
] as $erwartet) {
|
||||
self::assertStringContainsString($erwartet, $formular);
|
||||
}
|
||||
}
|
||||
|
||||
public function testManagerFuehrtAlleMessvariablenUndRichtungszaehler(): void
|
||||
{
|
||||
$modul = (string) file_get_contents(__DIR__ . '/../Manager/module.php');
|
||||
|
||||
foreach ([
|
||||
'PVLeistungArchiv',
|
||||
'HausverbrauchLeistungArchiv',
|
||||
'NetzleistungArchiv',
|
||||
'BatterieleistungArchiv',
|
||||
'PVEnergie',
|
||||
'Hausenergie',
|
||||
'NetzbezugEnergie',
|
||||
'EinspeisungEnergie',
|
||||
'BatterieLadenEnergie',
|
||||
'BatterieEntladenEnergie',
|
||||
] as $ident) {
|
||||
self::assertStringContainsString("'" . $ident . "'", $modul);
|
||||
}
|
||||
self::assertStringContainsString("RegisterTimer(
|
||||
'MesswerteAufzeichnen'", $modul);
|
||||
self::assertStringContainsString('EnergieMessung::energieDeltas', $modul);
|
||||
}
|
||||
|
||||
public function testFunFactsSindResponsivUndErklaerenUmrechnungen(): void
|
||||
{
|
||||
$trait = (string) file_get_contents(__DIR__ . '/../libs/ManagerEnergieTrait.php');
|
||||
|
||||
self::assertStringContainsString('grid-template-columns:repeat(3,minmax(0,1fr))', $trait);
|
||||
self::assertStringContainsString('@media(max-width:820px)', $trait);
|
||||
self::assertStringContainsString('10 kWh pro Liter Heizoel', $trait);
|
||||
self::assertStringContainsString('2,4 Flugkilometern', $trait);
|
||||
self::assertStringContainsString('AC_GetAggregatedValues', $trait);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user