Skip to content

Commit ce6800d

Browse files
committed
state names are only a-z 0-9
1 parent f265212 commit ce6800d

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

custom_components/lennoxs30/__init__.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import asyncio
99
from asyncio.locks import Event
1010
import logging
11+
import re
1112
import time
1213
import voluptuous as vol
1314

@@ -471,10 +472,10 @@ def __init__(
471472
else:
472473
if ip_address is None:
473474
e_name = email.split("@")
474-
redacted_email: str = e_name[0].replace(".", "_").replace("__","_")
475+
redacted_email: str = re.sub("[^A-Za-z0-9]","",e_name[0])
475476
self.connection_state = "lennoxs30.conn_" + redacted_email
476477
else:
477-
self.connection_state = "lennoxs30.conn_" + self._ip_address.replace(".", "_").replace(":", "_")
478+
self.connection_state = "lennoxs30.conn_" + re.sub("[^A-Za-z0-9]","",self._ip_address)
478479

479480
async def async_shutdown(self, event: Event) -> None:
480481
"""Called when hass shutsdown"""

tests/test_async_setup_entry.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -316,11 +316,11 @@ async def test_async_setup_entry_multiple(hass, caplog):
316316
assert manager.create_equipment_parameters is False
317317
assert manager._conf_init_wait_time == 30
318318
assert manager.is_metric is True
319-
assert manager.connection_state == "lennoxs30.conn_192_168_1_94"
319+
assert manager.connection_state == "lennoxs30.conn_192168194"
320320

321321
data = {
322322
"cloud_connection": True,
323-
"email": "pete._rage@rage.com",
323+
"email": "_pete._rage@rage.com",
324324
"password": "rage",
325325
"app_id": "homeassistant",
326326
"create_sensors": True,
@@ -354,7 +354,7 @@ async def test_async_setup_entry_multiple(hass, caplog):
354354
assert manager._poll_interval == 1
355355
assert manager._fast_poll_interval == 0.75
356356
assert manager._fast_poll_count == 5
357-
assert manager.api._username == "pete._rage@rage.com"
357+
assert manager.api._username == "_pete._rage@rage.com"
358358
assert manager.api._password == "rage"
359359
assert manager._pii_message_log is False
360360
assert manager._message_debug_logging is True
@@ -367,7 +367,7 @@ async def test_async_setup_entry_multiple(hass, caplog):
367367
assert manager.create_equipment_parameters is False
368368
assert manager._conf_init_wait_time == 30
369369
assert manager.is_metric is True
370-
assert manager.connection_state == "lennoxs30.conn_pete_rage"
370+
assert manager.connection_state == "lennoxs30.conn_peterage"
371371

372372

373373
@pytest.mark.asyncio

0 commit comments

Comments
 (0)