def test_service_group_set_group_remove_group(hass): """Check if service are available.""" with assert_setup_component(0, "group"): yield from async_setup_component(hass, "group", {"group": {}}) common.async_set_group(hass, "user_test_group", name="Test") yield from hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes["friendly_name"] == "Test" common.async_set_group( hass, "user_test_group", view=True, visible=False, entity_ids=["test.entity_bla1"], ) yield from hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state assert group_state.attributes[group.ATTR_VIEW] assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes["hidden"] assert group_state.attributes["friendly_name"] == "Test" assert list(group_state.attributes["entity_id"]) == ["test.entity_bla1"] common.async_set_group( hass, "user_test_group", icon="mdi:camera", name="Test2", control="hidden", add=["test.entity_id2"], ) yield from hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state assert group_state.attributes[group.ATTR_VIEW] assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes["hidden"] assert group_state.attributes["friendly_name"] == "Test2" assert group_state.attributes["icon"] == "mdi:camera" assert group_state.attributes[group.ATTR_CONTROL] == "hidden" assert sorted(list(group_state.attributes["entity_id"])) == sorted( ["test.entity_bla1", "test.entity_id2"] ) common.async_remove(hass, "user_test_group") yield from hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state is None
async def test_modify_group(hass): """Test modifying a group.""" group_conf = OrderedDict() group_conf["modify_group"] = { "name": "friendly_name", "icon": "mdi:work", "entities": None, } assert await async_setup_component(hass, "group", {"group": group_conf}) await hass.async_block_till_done() assert hass.states.get(f"{group.DOMAIN}.modify_group") # The old way would create a new group modify_group1 because # internally it didn't know anything about those created in the config common.async_set_group(hass, "modify_group", icon="mdi:play") await hass.async_block_till_done() group_state = hass.states.get(f"{group.DOMAIN}.modify_group") assert group_state assert hass.states.async_entity_ids() == ["group.modify_group"] assert group_state.attributes.get(ATTR_ICON) == "mdi:play" assert group_state.attributes.get(ATTR_FRIENDLY_NAME) == "friendly_name"
def test_service_group_set_group_remove_group(hass): """Check if service are available.""" with assert_setup_component(0, 'group'): yield from async_setup_component(hass, 'group', {'group': {}}) common.async_set_group(hass, 'user_test_group', name="Test") yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes['friendly_name'] == "Test" common.async_set_group(hass, 'user_test_group', view=True, visible=False, entity_ids=['test.entity_bla1']) yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state assert group_state.attributes[group.ATTR_VIEW] assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes['hidden'] assert group_state.attributes['friendly_name'] == "Test" assert list(group_state.attributes['entity_id']) == ['test.entity_bla1'] common.async_set_group(hass, 'user_test_group', icon="mdi:camera", name="Test2", control="hidden", add=['test.entity_id2']) yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state assert group_state.attributes[group.ATTR_VIEW] assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes['hidden'] assert group_state.attributes['friendly_name'] == "Test2" assert group_state.attributes['icon'] == "mdi:camera" assert group_state.attributes[group.ATTR_CONTROL] == "hidden" assert sorted(list(group_state.attributes['entity_id'])) == sorted( ['test.entity_bla1', 'test.entity_id2']) common.async_remove(hass, 'user_test_group') yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state is None
def test_service_group_set_group_remove_group(hass): """Check if service are available.""" with assert_setup_component(0, 'group'): yield from async_setup_component(hass, 'group', { 'group': {} }) common.async_set_group(hass, 'user_test_group', name="Test") yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes['friendly_name'] == "Test" common.async_set_group( hass, 'user_test_group', view=True, visible=False, entity_ids=['test.entity_bla1']) yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state assert group_state.attributes[group.ATTR_VIEW] assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes['hidden'] assert group_state.attributes['friendly_name'] == "Test" assert list(group_state.attributes['entity_id']) == ['test.entity_bla1'] common.async_set_group( hass, 'user_test_group', icon="mdi:camera", name="Test2", control="hidden", add=['test.entity_id2']) yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state assert group_state.attributes[group.ATTR_VIEW] assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes['hidden'] assert group_state.attributes['friendly_name'] == "Test2" assert group_state.attributes['icon'] == "mdi:camera" assert group_state.attributes[group.ATTR_CONTROL] == "hidden" assert sorted(list(group_state.attributes['entity_id'])) == sorted([ 'test.entity_bla1', 'test.entity_id2']) common.async_remove(hass, 'user_test_group') yield from hass.async_block_till_done() group_state = hass.states.get('group.user_test_group') assert group_state is None
async def test_service_group_set_group_remove_group(hass): """Check if service are available.""" with assert_setup_component(0, "group"): await async_setup_component(hass, "group", {"group": {}}) common.async_set_group(hass, "user_test_group", name="Test") await hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes["friendly_name"] == "Test" common.async_set_group(hass, "user_test_group", entity_ids=["test.entity_bla1"]) await hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes["friendly_name"] == "Test" assert list(group_state.attributes["entity_id"]) == ["test.entity_bla1"] common.async_set_group( hass, "user_test_group", icon="mdi:camera", name="Test2", add=["test.entity_id2"], ) await hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state assert group_state.attributes[group.ATTR_AUTO] assert group_state.attributes["friendly_name"] == "Test2" assert group_state.attributes["icon"] == "mdi:camera" assert sorted(list(group_state.attributes["entity_id"])) == sorted( ["test.entity_bla1", "test.entity_id2"]) common.async_remove(hass, "user_test_group") await hass.async_block_till_done() group_state = hass.states.get("group.user_test_group") assert group_state is None