Cloud: Websocket API to manage Google assistant entity config (#24153)
* Extract exposed devices function * Add might_2fa info to trait * Do not filter with should_expose in Google helper func * Cloud: allow setting if Google entity is exposed * Allow disabling 2FA via config * Cloud: allow disabling 2FA * Lint * More changes * Fix typing
This commit is contained in:
parent
85dfea1642
commit
6947f8cb2e
12 changed files with 346 additions and 86 deletions
|
@ -843,6 +843,8 @@ async def test_lock_unlock_lock(hass):
|
|||
assert helpers.get_google_type(lock.DOMAIN, None) is not None
|
||||
assert trait.LockUnlockTrait.supported(lock.DOMAIN, lock.SUPPORT_OPEN,
|
||||
None)
|
||||
assert trait.LockUnlockTrait.might_2fa(lock.DOMAIN, lock.SUPPORT_OPEN,
|
||||
None)
|
||||
|
||||
trt = trait.LockUnlockTrait(hass,
|
||||
State('lock.front_door', lock.STATE_LOCKED),
|
||||
|
@ -922,6 +924,13 @@ async def test_lock_unlock_unlock(hass):
|
|||
assert len(calls) == 1
|
||||
assert err.value.code == const.ERR_CHALLENGE_NOT_SETUP
|
||||
|
||||
# Test with 2FA override
|
||||
with patch('homeassistant.components.google_assistant.helpers'
|
||||
'.Config.should_2fa', return_value=False):
|
||||
await trt.execute(
|
||||
trait.COMMAND_LOCKUNLOCK, BASIC_DATA, {'lock': False}, {})
|
||||
assert len(calls) == 2
|
||||
|
||||
|
||||
async def test_fan_speed(hass):
|
||||
"""Test FanSpeed trait speed control support for fan domain."""
|
||||
|
@ -1216,6 +1225,8 @@ async def test_openclose_cover_secure(hass, device_class):
|
|||
assert helpers.get_google_type(cover.DOMAIN, device_class) is not None
|
||||
assert trait.OpenCloseTrait.supported(
|
||||
cover.DOMAIN, cover.SUPPORT_SET_POSITION, device_class)
|
||||
assert trait.OpenCloseTrait.might_2fa(
|
||||
cover.DOMAIN, cover.SUPPORT_SET_POSITION, device_class)
|
||||
|
||||
trt = trait.OpenCloseTrait(hass, State('cover.bla', cover.STATE_OPEN, {
|
||||
ATTR_DEVICE_CLASS: device_class,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue