Skip to content

Commit 631a437

Browse files
committed
Don't modify legacy_anna data
1 parent a2a625e commit 631a437

File tree

7 files changed

+10
-7
lines changed

7 files changed

+10
-7
lines changed

plugwise/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ async def connect(self) -> bool:
143143
self.smile_fw_version,
144144
self.smile_hostname,
145145
self.smile_hw_version,
146+
self.smile_legacy,
146147
self.smile_mac_address,
147148
self.smile_model,
148149
self.smile_name,

plugwise/common.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ def _appl_heater_central_info(
5252
self,
5353
appl: Munch,
5454
xml_1: etree,
55+
legacy: bool,
5556
xml_2: etree = None,
5657
xml_3: etree = None,
5758
) -> Munch:
@@ -85,7 +86,7 @@ def _appl_heater_central_info(
8586
module_data = self._get_module_data(xml_1, locator_2, mod_type, xml_3)
8687
appl.vendor_name = module_data["vendor_name"]
8788
appl.hardware = module_data["hardware_version"]
88-
appl.model_id = module_data["vendor_model"]
89+
appl.model_id = module_data["vendor_model"] if not legacy else None
8990
appl.model = (
9091
"Generic heater/cooler"
9192
if self._cooling_present

plugwise/helper.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,7 @@ def __init__(self) -> None:
252252
self.loc_data: dict[str, ThermoLoc]
253253
self.smile_fw_version: str | None
254254
self.smile_hw_version: str | None
255+
self.smile_legacy: bool
255256
self.smile_mac_address: str | None
256257
self.smile_model: str
257258
self.smile_name: str
@@ -372,7 +373,7 @@ def _appliance_info_finder(self, appl: Munch, appliance: etree) -> Munch:
372373
return self._appl_thermostat_info(appl, appliance)
373374
case "heater_central":
374375
# Collect heater_central device info
375-
self._appl_heater_central_info(appl, appliance)
376+
self._appl_heater_central_info(appl, appliance, self.smile_legacy)
376377
self._appl_dhw_mode_info(appl, appliance)
377378
return appl
378379
case _:

plugwise/legacy/helper.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ def _appliance_info_finder(self, appliance: etree, appl: Munch) -> Munch:
208208
return self._appl_thermostat_info(appl, appliance, self._modules)
209209
# Collect heater_central device info
210210
case "heater_central":
211-
return self._appl_heater_central_info(appl, appliance, self._appliances, self._modules)
211+
return self._appl_heater_central_info(appl, appliance, True, self._appliances, self._modules)
212212
# Collect info from Stretches
213213
case _:
214214
return self._energy_device_info_finder(appliance, appl)

plugwise/smile.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ def __init__(
6060
smile_fw_version: str | None,
6161
smile_hostname: str | None,
6262
smile_hw_version: str | None,
63+
smile_legacy: bool,
6364
smile_mac_address: str | None,
6465
smile_model: str,
6566
smile_name: str,
@@ -76,8 +77,6 @@ def __init__(
7677
port,
7778
timeout,
7879
)
79-
SmileData.__init__(self)
80-
8180
self._cooling_present = _cooling_present
8281
self._elga = _elga
8382
self._is_thermostat = _is_thermostat
@@ -91,10 +90,12 @@ def __init__(
9190
self.smile_fw_version = smile_fw_version
9291
self.smile_hostname = smile_hostname
9392
self.smile_hw_version = smile_hw_version
93+
self.smile_legacy = smile_legacy
9494
self.smile_mac_address = smile_mac_address
9595
self.smile_model = smile_model
9696
self.smile_name = smile_name
9797
self.smile_type = smile_type
98+
SmileData.__init__(self)
9899

99100
self._heater_id: str
100101
self._cooling_enabled = False

tests/data/anna/legacy_anna.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
"dev_class": "heater_central",
3636
"location": "0000aaaa0000aaaa0000aaaa0000aa00",
3737
"model": "Generic heater",
38-
"model_id": "4.21",
3938
"name": "OpenTherm",
4039
"vendor": "Bosch Thermotechniek B.V.",
4140
"maximum_boiler_temperature": {

tests/test_legacy_anna.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ async def test_connect_legacy_anna(self):
3030

3131
await self.device_test(smile, "2020-03-22 00:00:01", testdata)
3232
assert smile.gateway_id == "0000aaaa0000aaaa0000aaaa0000aa00"
33-
assert self.device_items == 42
33+
assert self.device_items == 41
3434

3535
result = await self.tinker_legacy_thermostat(smile, schedule_on=False)
3636
assert result

0 commit comments

Comments
 (0)