From fb5af9acd05d85af43c2afa8e54aec0fa7c9c9e8 Mon Sep 17 00:00:00 2001 From: Shay Levy <levyshay1@gmail.com> Date: Fri, 21 Feb 2025 20:52:10 +0200 Subject: [PATCH] Fix Shelly mock initialization for sleepy RPC device in tests (#139003) --- tests/components/shelly/conftest.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/tests/components/shelly/conftest.py b/tests/components/shelly/conftest.py index b643979f9a6..a332d16f95d 100644 --- a/tests/components/shelly/conftest.py +++ b/tests/components/shelly/conftest.py @@ -1,5 +1,6 @@ """Test configuration for Shelly.""" +from copy import deepcopy from unittest.mock import AsyncMock, Mock, PropertyMock, patch from aioshelly.ble.const import ( @@ -592,8 +593,11 @@ def _mock_sleepy_not_initialized_rpc_device(): def initialize_sleepy_rpc_device(device): """Initialize a sleepy RPC (Gen2+, Websocket) device.""" - type(device).requires_auth = PropertyMock() - type(device).status = PropertyMock(return_value=MOCK_STATUS_RPC) + status = deepcopy(MOCK_STATUS_RPC) + status["sys"]["wakeup_period"] = 1000 + + type(device).requires_auth = PropertyMock(return_value=False) + type(device).status = PropertyMock(return_value=status) type(device).event = PropertyMock(return_value={}) type(device).config = PropertyMock(return_value=MOCK_CONFIG) type(device).shelly = PropertyMock(return_value=MOCK_SHELLY_RPC) @@ -601,14 +605,13 @@ def initialize_sleepy_rpc_device(device): type(device).firmware_version = PropertyMock( return_value="20240425-141520/1.3.0-ga3fdd3d" ) - type(device).version = PropertyMock("1.3.0") - type(device).model = PropertyMock("SPSW-201PE16EU") + type(device).version = PropertyMock(return_value="1.3.0") + type(device).model = PropertyMock(return_value="SPSW-201PE16EU") type(device).xmod_info = PropertyMock(return_value={}) type(device).hostname = PropertyMock(return_value="hostname") type(device).name = PropertyMock(return_value="Test Name") type(device).firmware_supported = PropertyMock(return_value=True) - device.status["sys"]["wakeup_period"] = 1000 device.connected = True device.initialized = True -- GitLab