diff --git a/homematicip/aio/group.py b/homematicip/aio/group.py index a974dafa..2932df05 100644 --- a/homematicip/aio/group.py +++ b/homematicip/aio/group.py @@ -69,7 +69,7 @@ async def set_shutter_stop(self): return await self._connection.api_call(url, data) async def set_slats_level(self, slatsLevel, shutterlevel): - url, data = super().set_slats_level(slatsLevel,shutterlevel) + url, data = super().set_slats_level(slatsLevel, shutterlevel) return await self._connection.api_call(url, data) @@ -97,9 +97,10 @@ async def set_shutter_stop(self): return await self._connection.api_call(url, data) async def set_slats_level(self, slatsLevel, shutterlevel): - url, data = super().set_slats_level(slatsLevel,shutterlevel) + url, data = super().set_slats_level(slatsLevel, shutterlevel) return await self._connection.api_call(url, data) + class AsyncAlarmSwitchingGroup(AlarmSwitchingGroup, AsyncGroup): async def set_on_time(self, onTimeSeconds): url, data = super().set_on_time(onTimeSeconds) diff --git a/homematicip/group.py b/homematicip/group.py index d5fca4c6..1ae1b32e 100644 --- a/homematicip/group.py +++ b/homematicip/group.py @@ -140,10 +140,10 @@ def __init__(self, connection): self.slatsLevel = None self.dutyCycle = None self.lowBat = None - self.primaryShadingLevel = 0.0 + self.primaryShadingLevel = 0.0 self.primaryShadingStateType = ShadingStateType.NOT_EXISTENT - self.processing = None - self.secondaryShadingLevel = 0.0 + self.processing = None + self.secondaryShadingLevel = 0.0 self.secondaryShadingStateType = ShadingStateType.NOT_EXISTENT def from_json(self, js, devices): @@ -246,11 +246,11 @@ def __init__(self, connection): self.topShutterLevel = None self.bottomShutterLevel = None self.processing = None - self.primaryShadingLevel = 0.0 - self.primaryShadingStateType = ShadingStateType.NOT_EXISTENT - self.secondaryShadingLevel = 0.0 - self.secondaryShadingStateType = ShadingStateType.NOT_EXISTENT - self.groupVisibility = GroupVisibility.INVISIBLE_GROUP_AND_CONTROL + self.primaryShadingLevel = 0.0 + self.primaryShadingStateType = ShadingStateType.NOT_EXISTENT + self.secondaryShadingLevel = 0.0 + self.secondaryShadingStateType = ShadingStateType.NOT_EXISTENT + self.groupVisibility = GroupVisibility.INVISIBLE_GROUP_AND_CONTROL def from_json(self, js, devices): super().from_json(js, devices) diff --git a/homematicip_demo/fake_cloud_server.py b/homematicip_demo/fake_cloud_server.py index c7f4290f..84ea41ad 100644 --- a/homematicip_demo/fake_cloud_server.py +++ b/homematicip_demo/fake_cloud_server.py @@ -863,7 +863,6 @@ async def post_hmip_group_switching_stop( response = web.json_response(None) return response - @validate_authorization async def post_hmip_group_heating_setSetPointTemperature( self, request: web.Request diff --git a/tests/aio_tests/test_async_groups.py b/tests/aio_tests/test_async_groups.py index b6606c71..43fcd9db 100644 --- a/tests/aio_tests/test_async_groups.py +++ b/tests/aio_tests/test_async_groups.py @@ -201,12 +201,14 @@ async def test_switching_group(no_ssl_fake_async_home: AsyncHome): with pytest.raises(HmipWrongHttpStatusError): result = await g.set_shutter_level(50) with pytest.raises(HmipWrongHttpStatusError): - result = await g.set_slats_level(2.0,10) + result = await g.set_slats_level(2.0, 10) @pytest.mark.asyncio async def test_extended_linked_shutter_group(no_ssl_fake_async_home: AsyncHome): - g = no_ssl_fake_async_home.search_group_by_id("00000000-0000-0000-0000-000000000050") + g = no_ssl_fake_async_home.search_group_by_id( + "00000000-0000-0000-0000-000000000050" + ) assert g.groupVisibility == GroupVisibility.VISIBLE assert g.dutyCycle is False @@ -224,9 +226,11 @@ async def test_extended_linked_shutter_group(no_ssl_fake_async_home: AsyncHome): assert str(g) == "EXTENDED_LINKED_SHUTTER Rollos shutterLevel(1.0) slatsLevel(None)" - await g.set_slats_level(1.2,10) + await g.set_slats_level(1.2, 10) await no_ssl_fake_async_home.get_current_state() - g = no_ssl_fake_async_home.search_group_by_id("00000000-0000-0000-0000-000000000050") + g = no_ssl_fake_async_home.search_group_by_id( + "00000000-0000-0000-0000-000000000050" + ) assert g.slatsLevel == 1.2 assert g.shutterLevel == 10 @@ -234,5 +238,7 @@ async def test_extended_linked_shutter_group(no_ssl_fake_async_home: AsyncHome): await g.set_shutter_stop() await g.set_shutter_level(30) await no_ssl_fake_async_home.get_current_state() - g = no_ssl_fake_async_home.search_group_by_id("00000000-0000-0000-0000-000000000050") - assert g.shutterLevel == 30 \ No newline at end of file + g = no_ssl_fake_async_home.search_group_by_id( + "00000000-0000-0000-0000-000000000050" + ) + assert g.shutterLevel == 30 diff --git a/tests/test_groups.py b/tests/test_groups.py index ec894039..e4fb125f 100644 --- a/tests/test_groups.py +++ b/tests/test_groups.py @@ -373,6 +373,7 @@ def test_humidity_warning_rule_group(fake_home: Home): d = fake_home.search_device_by_id("3014F7110000000000000038") assert g.outdoorClimateSensor == d + def test_extended_linked_shutter_group(fake_home: Home): with no_ssl_verification(): g = fake_home.search_group_by_id("00000000-0000-0000-0000-000000000050") @@ -391,9 +392,12 @@ def test_extended_linked_shutter_group(fake_home: Home): assert g.bottomShutterLevel == 1.0 assert g.bottomSlatsLevel == 1.0 - assert str(g) == "EXTENDED_LINKED_SHUTTER Rollos shutterLevel(1.0) slatsLevel(None)" + assert ( + str(g) + == "EXTENDED_LINKED_SHUTTER Rollos shutterLevel(1.0) slatsLevel(None)" + ) - g.set_slats_level(1.2,10) + g.set_slats_level(1.2, 10) fake_home.get_current_state() g = fake_home.search_group_by_id("00000000-0000-0000-0000-000000000050") @@ -405,7 +409,7 @@ def test_extended_linked_shutter_group(fake_home: Home): fake_home.get_current_state() g = fake_home.search_group_by_id("00000000-0000-0000-0000-000000000050") assert g.shutterLevel == 30 - + def test_all_groups_implemented(fake_home: Home): for g in fake_home.groups: