From 31f0baf47867daac2cca96c69abffaf018d9af94 Mon Sep 17 00:00:00 2001 From: StefanStrobel Date: Tue, 31 May 2022 18:24:48 +0000 Subject: [PATCH] 98_ComfoAir: updated tests git-svn-id: https://svn.fhem.de/fhem/trunk@26105 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/t/FHEM/98_ComfoAir/10_Define.cfg | 2 + fhem/t/FHEM/98_ComfoAir/10_Define.t | 37 ++++++++++++++++ fhem/t/FHEM/98_ComfoAir/40_Read.cfg | 6 +++ fhem/t/FHEM/98_ComfoAir/40_Read.t | 57 ++++++++++++++++++++++++ fhem/t/FHEM/98_ComfoAir/42_Write.cfg | 6 +++ fhem/t/FHEM/98_ComfoAir/42_Write.t | 64 +++++++++++++++++++++++++++ 6 files changed, 172 insertions(+) create mode 100644 fhem/t/FHEM/98_ComfoAir/10_Define.cfg create mode 100644 fhem/t/FHEM/98_ComfoAir/10_Define.t create mode 100644 fhem/t/FHEM/98_ComfoAir/40_Read.cfg create mode 100644 fhem/t/FHEM/98_ComfoAir/40_Read.t create mode 100644 fhem/t/FHEM/98_ComfoAir/42_Write.cfg create mode 100644 fhem/t/FHEM/98_ComfoAir/42_Write.t diff --git a/fhem/t/FHEM/98_ComfoAir/10_Define.cfg b/fhem/t/FHEM/98_ComfoAir/10_Define.cfg new file mode 100644 index 000000000..c1d1c5c80 --- /dev/null +++ b/fhem/t/FHEM/98_ComfoAir/10_Define.cfg @@ -0,0 +1,2 @@ +attr global mseclog 1 + diff --git a/fhem/t/FHEM/98_ComfoAir/10_Define.t b/fhem/t/FHEM/98_ComfoAir/10_Define.t new file mode 100644 index 000000000..3ff4f08cf --- /dev/null +++ b/fhem/t/FHEM/98_ComfoAir/10_Define.t @@ -0,0 +1,37 @@ +############################################## +# test basic define +############################################## +package main; +use strict; +use warnings; +use Test::More; +use Time::HiRes qw( gettimeofday tv_interval); # return time as float, not just full seconds +use FHEM::HTTPMOD::Utils qw(:all); +use FHEM::Modbus::TestUtils qw(:all); + +NextStep(); + +sub testStep1 { + fhem 'define ZL ComfoAir none'; + return; +} + +sub testStep2 { + is(FhemTestUtils_gotLog("Defined with device none"), 1, "defined"); + is($defs{'ZL'}{Interval} // 0, 0, "no interval"); + FhemTestUtils_resetLogs(); + fhem 'delete ZL'; + fhem 'define ZL ComfoAir none 60'; + return; +} + +sub testStep3 { + is($defs{'ZL'}{Interval} // 0, 60, "interval correct"); + #is(FhemTestUtils_gotLog("ZL: Can't open NoSuchDevice: No such file or directory"), 1, "correct error if no device"); + #is(FhemTestUtils_gotLog("Defined with device NoSuchDevice"), 0, "no defined log if no device"); + FhemTestUtils_resetLogs(); + return; +} + + +1; diff --git a/fhem/t/FHEM/98_ComfoAir/40_Read.cfg b/fhem/t/FHEM/98_ComfoAir/40_Read.cfg new file mode 100644 index 000000000..38bd0d5a8 --- /dev/null +++ b/fhem/t/FHEM/98_ComfoAir/40_Read.cfg @@ -0,0 +1,6 @@ +attr global mseclog 1 + +define ZL ComfoAir none +attr ZL verbose 5 +attr ZL timeout 0 +attr ZL queueDelay 0 diff --git a/fhem/t/FHEM/98_ComfoAir/40_Read.t b/fhem/t/FHEM/98_ComfoAir/40_Read.t new file mode 100644 index 000000000..ce8b03207 --- /dev/null +++ b/fhem/t/FHEM/98_ComfoAir/40_Read.t @@ -0,0 +1,57 @@ +############################################## +# test ComfoAir listen and create readings +############################################## + +package main; + +use strict; +use warnings; +use Test::More; +use Time::HiRes qw( gettimeofday tv_interval); # return time as float, not just full seconds +use FHEM::HTTPMOD::Utils qw(:all); +use FHEM::Modbus::TestUtils qw(:all); + +NextStep; + +sub testStep1 { + SimRead('ZL', '07f000d209503e4e55550f28282895070f'); + SimRead('ZL', '07f3'); + return; +} + +sub testStep2 { + is(FhemTestUtils_gotEvent(qr/ZL:Temp_Komfort:\s20/xms), 1, "Parse TempKomfort with expression"); + CheckAndReset(); + return; +} + + +sub testStep3 { + SimRead('ZL', '07f000ce0e0f23320f23322d000300464600000d070f'); + SimRead('ZL', '07f3'); + return; +} + +sub testStep4 { + is(FhemTestUtils_gotEvent(qr/ZL:Stufe:\smittel/xms), 1, "Parse TempKomfort with expression"); + CheckAndReset(); + return; +} + + +sub testStep10 { + fhem 'attr ZL verbose 5'; + # start 07f0, cmd 00de, len 14, data, chk af, end 070f + #SimRead('ZL', '07f000de14004e0f003e8900018e05590000002e31128000010daf070f'); + SimRead('ZL', '07f000de144e0f003e8900018e05590000002e31128000010daf070f'); + return; +} + +sub testStep11{ + #is(FhemTestUtils_gotEvent(qr/ZL:Stufe:\smittel/xms), 1, "Parse TempKomfort with expression"); + return; +} + + + +1; diff --git a/fhem/t/FHEM/98_ComfoAir/42_Write.cfg b/fhem/t/FHEM/98_ComfoAir/42_Write.cfg new file mode 100644 index 000000000..38bd0d5a8 --- /dev/null +++ b/fhem/t/FHEM/98_ComfoAir/42_Write.cfg @@ -0,0 +1,6 @@ +attr global mseclog 1 + +define ZL ComfoAir none +attr ZL verbose 5 +attr ZL timeout 0 +attr ZL queueDelay 0 diff --git a/fhem/t/FHEM/98_ComfoAir/42_Write.t b/fhem/t/FHEM/98_ComfoAir/42_Write.t new file mode 100644 index 000000000..576e9bd50 --- /dev/null +++ b/fhem/t/FHEM/98_ComfoAir/42_Write.t @@ -0,0 +1,64 @@ +############################################## +# test ComfoAir listen and create readings +############################################## + +package main; + +use strict; +use warnings; +use Test::More; +use Time::HiRes qw( gettimeofday tv_interval); # return time as float, not just full seconds +use FHEM::HTTPMOD::Utils qw(:all); +use FHEM::Modbus::TestUtils qw(:all); + +NextStep; + + +sub testStep5 { + fhem 'set ZL Stufe niedrig'; + return 0.1; +} + +sub testStep6 { + is(FhemTestUtils_gotLog('Simulate sending to none: 07f00099010249070f'), 1, "got sending correct data for Stufe"); + CheckAndReset(); + return 0.1; +} + + +sub testStep7 { + fhem 'set ZL Temp_Komfort 21'; + return 0.1; +} + +sub testStep8 { + is(FhemTestUtils_gotLog('Simulate sending to none: 07f000d30152d3070f'), 1, "got sending correct data for Temp_Comfort"); + CheckAndReset(); +return; +} + + +sub testStep10 { + fhem 'set ZL Temp_Komfort 1'; + return 0.1; +} + +sub testStep11 { + is(FhemTestUtils_gotLog('Set Value 1 is smaller than Min'), 1, "got error from min check"); + CheckAndReset(); + return; +} + +sub testStep12 { + fhem 'set ZL Temp_Komfort 50'; + return 0.1; +} + +sub testStep13 { + is(FhemTestUtils_gotLog('Set Value 50 is bigger than Max'), 1, "got error from min check"); + CheckAndReset(); + return; +} + + +1;