def create_meta(self): astro_thing = find_astro_sun_thing() astro_channel = f"{astro_thing}:rise#start" name = get_random_name() # create item and link run_coro( async_create_item('DateTime', name, 'MyCustomLabel', tags=['Tag1'])) run_coro(async_create_channel_link(astro_channel, item_name=name)) # get item run_coro(async_get_item(name)) # delete it run_coro(async_remove_item(name)) time.sleep(0.2) # it still exists but now with editable=False try: run_coro(async_get_item(name)) except ItemNotFoundError: return True return False
def create_meta(self): with OpenhabTmpItem(None, 'String') as tmpitem: d = run_coro(async_get_item_with_habapp_meta(tmpitem.name)) assert d['metadata']['HABApp'] is None # create empty set run_coro( async_set_habapp_metadata(tmpitem.name, HABAppThingPluginData())) d = run_coro(async_get_item_with_habapp_meta(tmpitem.name)) assert isinstance(d['metadata']['HABApp'], HABAppThingPluginData) # create valid data run_coro( async_set_habapp_metadata( tmpitem.name, HABAppThingPluginData(created_link='asdf', created_ns=['a', 'b']))) d = run_coro(async_get_item_with_habapp_meta(tmpitem.name)) d = d['metadata']['HABApp'] assert isinstance(d, HABAppThingPluginData) assert d.created_link == 'asdf' assert d.created_ns == ['a', 'b'] # remove metadata again run_coro(async_remove_habapp_metadata(tmpitem.name)) d = run_coro(async_get_item_with_habapp_meta(tmpitem.name)) assert d['metadata']['HABApp'] is None return True