def setup(hass, config): """Create the ViCare component.""" conf = config[DOMAIN] params = {"token_file": hass.config.path(STORAGE_DIR, "vicare_token.save")} if conf.get(CONF_CIRCUIT) is not None: params["circuit"] = conf[CONF_CIRCUIT] params["cacheDuration"] = conf.get(CONF_SCAN_INTERVAL) heating_type = conf[CONF_HEATING_TYPE] try: if heating_type == HeatingType.gas: vicare_api = GazBoiler(conf[CONF_USERNAME], conf[CONF_PASSWORD], **params) elif heating_type == HeatingType.heatpump: vicare_api = HeatPump(conf[CONF_USERNAME], conf[CONF_PASSWORD], **params) elif heating_type == HeatingType.fuelcell: vicare_api = FuelCell(conf[CONF_USERNAME], conf[CONF_PASSWORD], **params) else: vicare_api = Device(conf[CONF_USERNAME], conf[CONF_PASSWORD], **params) except AttributeError: _LOGGER.error( "Failed to create PyViCare API client. Please check your credentials" ) return False hass.data[DOMAIN] = {} hass.data[DOMAIN][VICARE_API] = vicare_api hass.data[DOMAIN][VICARE_NAME] = conf[CONF_NAME] hass.data[DOMAIN][VICARE_HEATING_TYPE] = heating_type for platform in PLATFORMS: discovery.load_platform(hass, platform, DOMAIN, {}, config) return True
def asFuelCell(self): return FuelCell(self.service)
def setUp(self): self.service = ViCareServiceMock('response/VitovalorPT2.json') self.device = FuelCell(self.service)
def fuelcell(service): return FuelCell(None, None, None, 0, 0, service)
class VitovalorPT2(unittest.TestCase): def setUp(self): self.service = ViCareServiceMock('response/VitovalorPT2.json') self.device = FuelCell(self.service) def test_getDomesticHotWaterConfiguredTemperature(self): self.assertEqual( self.device.getDomesticHotWaterConfiguredTemperature(), 47) def test_getReturnTemperature(self): self.assertEqual( self.device.getReturnTemperature(), 46.1) def test_getActive(self): self.assertEqual(self.device.burners[0].getActive(), False) def test_getBurnerStarts(self): self.assertEqual(self.device.burners[0].getStarts(), 6218) def test_getBurnerHours(self): self.assertEqual(self.device.burners[0].getHours(), 1688) def test_getBurnerModulation(self): self.assertEqual(self.device.burners[0].getModulation(), 0) def test_getVolumetricFlowReturn(self): self.assertEqual(self.device.getVolumetricFlowReturn(), 412) def test_getDomesticHotWaterMaxTemperatureLevel(self): self.assertEqual(self.device.getDomesticHotWaterMaxTemperatureLevel(), 10) def test_getDomesticHotWaterMinTemperatureLevel(self): self.assertEqual(self.device.getDomesticHotWaterMinTemperatureLevel(), 10) def test_getHydraulicSeparatorTemperature(self): self.assertEqual(self.device.getHydraulicSeparatorTemperature(), 46.8) def test_getPowerConsumptionDays(self): expected_consumption = [0.6, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3] self.assertListEqual(self.device.getPowerConsumptionDays(), expected_consumption) def test_getPowerConsumptionUnit(self): self.assertEqual(self.device.getPowerConsumptionUnit(), "kilowattHour") def test_getPowerConsumptionHeatingDays(self): expected_consumption = [0.6, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3] self.assertListEqual(self.device.getPowerConsumptionHeatingDays(), expected_consumption) def test_getPowerConsumptionHeatingUnit(self): self.assertEqual(self.device.getPowerConsumptionHeatingUnit(), "kilowattHour") def test_getGasConsumptionTotalDays(self): expected_consumption = [2, 4.1, 4.1, 4.1, 4.1, 4.199999999999999, 4.1, 4.199999999999999] self.assertListEqual(self.device.getGasConsumptionTotalDays(), expected_consumption) def test_getGasConsumptionUnit(self): self.assertEqual(self.device.getGasConsumptionUnit(), "cubicMeter")