aiohomematic-test-support 2025.12.54__tar.gz → 2026.1.8__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (20) hide show
  1. {aiohomematic_test_support-2025.12.54/aiohomematic_test_support.egg-info → aiohomematic_test_support-2026.1.8}/PKG-INFO +1 -1
  2. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/__init__.py +4 -4
  3. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8/aiohomematic_test_support.egg-info}/PKG-INFO +1 -1
  4. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/const.py +1 -1
  5. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/event_capture.py +2 -2
  6. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/event_mock.py +2 -2
  7. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/factory.py +3 -3
  8. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/helper.py +2 -2
  9. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/mock.py +7 -7
  10. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/MANIFEST.in +0 -0
  11. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/README.md +0 -0
  12. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/aiohomematic_test_support.egg-info/SOURCES.txt +0 -0
  13. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/aiohomematic_test_support.egg-info/dependency_links.txt +0 -0
  14. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/aiohomematic_test_support.egg-info/top_level.txt +0 -0
  15. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/data/device_translation.json +0 -0
  16. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/data/full_session_randomized_ccu.zip +0 -0
  17. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/data/full_session_randomized_pydevccu.zip +0 -0
  18. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/py.typed +0 -0
  19. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/pyproject.toml +0 -0
  20. {aiohomematic_test_support-2025.12.54 → aiohomematic_test_support-2026.1.8}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiohomematic-test-support
3
- Version: 2025.12.54
3
+ Version: 2026.1.8
4
4
  Summary: Support-only package for AioHomematic (tests/dev). Not part of production builds.
5
5
  Author-email: SukramJ <sukramj@icloud.com>, Daniel Perna <danielperna84@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/SukramJ/aiohomematic
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: MIT
2
- # Copyright (c) 2021-2025
2
+ # Copyright (c) 2021-2026
3
3
  """
4
4
  Test support infrastructure for aiohomematic.
5
5
 
@@ -40,7 +40,7 @@ Using the factory to create a test central with session playback:
40
40
  Using EventCapture for behavior-focused testing:
41
41
 
42
42
  from aiohomematic_test_support.event_capture import EventCapture
43
- from aiohomematic.central.event_bus import CircuitBreakerTrippedEvent
43
+ from aiohomematic.central.events import CircuitBreakerTrippedEvent
44
44
 
45
45
  capture = EventCapture()
46
46
  capture.subscribe_to(central.event_bus, CircuitBreakerTrippedEvent)
@@ -53,7 +53,7 @@ Using EventCapture for behavior-focused testing:
53
53
  Using EventDrivenMockServer for event-triggered test behavior:
54
54
 
55
55
  from aiohomematic_test_support.event_mock import EventDrivenMockServer
56
- from aiohomematic.central.event_bus import DataRefreshTriggeredEvent
56
+ from aiohomematic.central.events import DataRefreshTriggeredEvent
57
57
 
58
58
  mock_server = EventDrivenMockServer(event_bus=central.event_bus)
59
59
  mock_server.when(DataRefreshTriggeredEvent).then_call(
@@ -76,4 +76,4 @@ test dependencies to access test support functionality.
76
76
 
77
77
  from __future__ import annotations
78
78
 
79
- __version__ = "2025.12.54"
79
+ __version__ = "2026.1.8"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiohomematic-test-support
3
- Version: 2025.12.54
3
+ Version: 2026.1.8
4
4
  Summary: Support-only package for AioHomematic (tests/dev). Not part of production builds.
5
5
  Author-email: SukramJ <sukramj@icloud.com>, Daniel Perna <danielperna84@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/SukramJ/aiohomematic
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: MIT
2
- # Copyright (c) 2021-2025
2
+ # Copyright (c) 2021-2026
3
3
  """Constants for tests."""
4
4
 
5
5
  from __future__ import annotations
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: MIT
2
- # Copyright (c) 2021-2025
2
+ # Copyright (c) 2021-2026
3
3
  """
4
4
  Event capture utilities for test verification.
5
5
 
@@ -19,7 +19,7 @@ from dataclasses import dataclass, field
19
19
  from typing import TYPE_CHECKING, Any, TypeVar
20
20
 
21
21
  if TYPE_CHECKING:
22
- from aiohomematic.central.event_bus import Event, EventBus
22
+ from aiohomematic.central.events import Event, EventBus
23
23
 
24
24
  T = TypeVar("T", bound="Event")
25
25
 
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: MIT
2
- # Copyright (c) 2021-2025
2
+ # Copyright (c) 2021-2026
3
3
  """
4
4
  Event-driven mock server for test triggers.
5
5
 
@@ -27,7 +27,7 @@ from dataclasses import dataclass, field
27
27
  from typing import TYPE_CHECKING, Any
28
28
 
29
29
  if TYPE_CHECKING:
30
- from aiohomematic.central.event_bus import Event, EventBus
30
+ from aiohomematic.central.events import Event, EventBus
31
31
 
32
32
 
33
33
  @dataclass
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: MIT
2
- # Copyright (c) 2021-2025
2
+ # Copyright (c) 2021-2026
3
3
  """
4
4
  Test factories for creating CentralUnit and Client instances.
5
5
 
@@ -43,7 +43,7 @@ from unittest.mock import MagicMock, Mock, patch
43
43
  from aiohttp import ClientSession
44
44
 
45
45
  from aiohomematic.central import CentralConfig, CentralUnit
46
- from aiohomematic.central.integration_events import (
46
+ from aiohomematic.central.events import (
47
47
  DataPointsCreatedEvent,
48
48
  DeviceLifecycleEvent,
49
49
  DeviceLifecycleEventType,
@@ -52,7 +52,7 @@ from aiohomematic.central.integration_events import (
52
52
  )
53
53
  from aiohomematic.client import ClientConfig, InterfaceConfig
54
54
  from aiohomematic.const import LOCAL_HOST, Interface, OptionalSettings
55
- from aiohomematic.interfaces.client import ClientProtocol
55
+ from aiohomematic.interfaces import ClientProtocol
56
56
  from aiohomematic_test_support import const
57
57
  from aiohomematic_test_support.mock import SessionPlayer, get_client_session, get_mock, get_xml_rpc_proxy
58
58
 
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: MIT
2
- # Copyright (c) 2021-2025
2
+ # Copyright (c) 2021-2026
3
3
  """Helpers for tests."""
4
4
 
5
5
  from __future__ import annotations
@@ -13,7 +13,7 @@ import orjson
13
13
 
14
14
  from aiohomematic.central import CentralUnit
15
15
  from aiohomematic.const import UTF_8
16
- from aiohomematic.interfaces.model import CustomDataPointProtocol
16
+ from aiohomematic.interfaces import CustomDataPointProtocol
17
17
 
18
18
  _LOGGER = logging.getLogger(__name__)
19
19
 
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: MIT
2
- # Copyright (c) 2021-2025
2
+ # Copyright (c) 2021-2026
3
3
  """
4
4
  Mock implementations for RPC clients with session playback.
5
5
 
@@ -52,14 +52,14 @@ import zipfile
52
52
  from aiohttp import ClientSession
53
53
  import orjson
54
54
 
55
+ from aiohomematic.async_support import Looper
55
56
  from aiohomematic.central import CentralUnit
56
- from aiohomematic.client import BaseRpcProxy
57
- from aiohomematic.client.circuit_breaker import CircuitBreaker
57
+ from aiohomematic.client import BaseRpcProxy, CircuitBreaker
58
58
  from aiohomematic.client.json_rpc import _JsonKey, _JsonRpcMethod
59
59
  from aiohomematic.client.rpc_proxy import _RpcMethod
60
60
  from aiohomematic.const import UTF_8, DataOperationResult, Parameter, ParamsetKey, RPCType
61
61
  from aiohomematic.property_decorators import DelegatedProperty
62
- from aiohomematic.store.serialization import cleanup_params_for_session, freeze_params, unfreeze_params
62
+ from aiohomematic.store import cleanup_params_for_session, freeze_params, unfreeze_params
63
63
  from aiohomematic_test_support import const
64
64
 
65
65
  _LOGGER = logging.getLogger(__name__)
@@ -276,7 +276,7 @@ def get_xml_rpc_proxy( # noqa: C901
276
276
  self._supported_methods: tuple[str, ...] = ()
277
277
  self._central: CentralUnit | None = None
278
278
  # Real CircuitBreaker to provide actual metrics for tests
279
- self._circuit_breaker = CircuitBreaker(interface_id="mock-interface")
279
+ self._circuit_breaker = CircuitBreaker(interface_id="mock-interface", task_scheduler=Looper())
280
280
 
281
281
  def __getattr__(self, name: str) -> Any:
282
282
  # Start of method chain
@@ -334,11 +334,11 @@ def get_xml_rpc_proxy( # noqa: C901
334
334
 
335
335
  for dd in devices:
336
336
  if ignore_devices_on_create is not None and (
337
- dd["ADDRESS"] in ignore_devices_on_create or dd["PARENT"] in ignore_devices_on_create
337
+ dd["ADDRESS"] in ignore_devices_on_create or dd.get("PARENT") in ignore_devices_on_create
338
338
  ):
339
339
  continue
340
340
  if address_device_translation is not None:
341
- if dd["ADDRESS"] in address_device_translation or dd["PARENT"] in address_device_translation:
341
+ if dd["ADDRESS"] in address_device_translation or dd.get("PARENT") in address_device_translation:
342
342
  new_devices.append(dd)
343
343
  else:
344
344
  new_devices.append(dd)