forked from openviess/PyViCare
-
Notifications
You must be signed in to change notification settings - Fork 0
/
test_Vitodens300W.py
63 lines (47 loc) · 2.56 KB
/
test_Vitodens300W.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import unittest
from PyViCare.PyViCareGazBoiler import GazBoiler
from PyViCare.PyViCareUtils import PyViCareNotSupportedFeatureError
from tests.ViCareServiceMock import ViCareServiceMock
class Vitodens300W(unittest.TestCase):
def setUp(self):
self.service = ViCareServiceMock('response/Vitodens300W.json')
self.device = GazBoiler(self.service)
def test_getActive(self):
self.assertEqual(self.device.burners[0].getActive(), False)
def test_getDomesticHotWaterChargingLevel(self):
self.assertEqual(self.device.getDomesticHotWaterChargingLevel(), 0)
def test_getBurnerStarts(self):
self.assertEqual(self.device.burners[0].getStarts(), 14315)
def test_getBurnerHours(self):
self.assertEqual(self.device.burners[0].getHours(), 18726.3)
def test_getBurnerModulation(self):
self.assertEqual(self.device.burners[0].getModulation(), 0)
def test_getPrograms(self):
expected_programs = ['active', 'comfort', 'eco',
'external', 'holiday', 'normal', 'reduced', 'standby']
self.assertListEqual(
self.device.circuits[0].getPrograms(), expected_programs)
def test_getModes(self):
expected_modes = ['standby', 'dhw', 'dhwAndHeating', 'forcedReduced', 'forcedNormal']
self.assertListEqual(
self.device.circuits[0].getModes(), expected_modes)
def test_getPowerConsumptionDays(self):
expected_consumption = [0.219, 0.316, 0.32, 0.325, 0.311, 0.317, 0.312, 0.313]
self.assertEqual(self.device.getPowerConsumptionDays(),
expected_consumption)
def test_getFrostProtectionActive(self):
self.assertEqual(
self.device.circuits[0].getFrostProtectionActive(), False)
def test_getDomesticHotWaterCirculationPumpActive(self):
self.assertEqual(
self.device.getDomesticHotWaterCirculationPumpActive(), True)
def test_getCurrentDesiredTemperature(self):
self.assertEqual(
self.device.circuits[0].getCurrentDesiredTemperature(), None)
# Is currently (August, 2021) not supported by the Viessman API even though it works for the Vitodens 200W.
def test_getDomesticHotWaterOutletTemperature(self):
self.assertRaises(PyViCareNotSupportedFeatureError,
self.device.getDomesticHotWaterOutletTemperature)
def test_getDomesticHotWaterCirculationScheduleModes(self):
self.assertRaises(PyViCareNotSupportedFeatureError,
self.device.getDomesticHotWaterCirculationScheduleModes)