diff --git a/homeassistant/components/unifi/switch.py b/homeassistant/components/unifi/switch.py index 236ca02ab2d..2b7965d1095 100644 --- a/homeassistant/components/unifi/switch.py +++ b/homeassistant/components/unifi/switch.py @@ -266,8 +266,8 @@ class UniFiBlockClientSwitch(UniFiClient, SwitchDevice): @property def is_on(self): - """Return true if client is blocked.""" - return self.client.blocked + """Return true if client is allowed to connect.""" + return not self.client.blocked @property def available(self): @@ -275,9 +275,9 @@ class UniFiBlockClientSwitch(UniFiClient, SwitchDevice): return self.controller.available async def async_turn_on(self, **kwargs): - """Block client.""" - await self.controller.api.clients.async_block(self.client.mac) + """Turn on connectivity for client.""" + await self.controller.api.clients.async_unblock(self.client.mac) async def async_turn_off(self, **kwargs): - """Unblock client.""" - await self.controller.api.clients.async_unblock(self.client.mac) + """Turn off connectivity for client.""" + await self.controller.api.clients.async_block(self.client.mac) diff --git a/tests/components/unifi/test_switch.py b/tests/components/unifi/test_switch.py index 915646b9856..f84efa5dada 100644 --- a/tests/components/unifi/test_switch.py +++ b/tests/components/unifi/test_switch.py @@ -342,11 +342,11 @@ async def test_switches(hass, mock_controller): blocked = hass.states.get("switch.block_client_1") assert blocked is not None - assert blocked.state == "on" + assert blocked.state == "off" unblocked = hass.states.get("switch.block_client_2") assert unblocked is not None - assert unblocked.state == "off" + assert unblocked.state == "on" async def test_new_client_discovered(hass, mock_controller):