Skip to content
Snippets Groups Projects
Commit bd905156 authored by Eva Bardou's avatar Eva Bardou :frog:
Browse files

Allow to set load_parents parameter while using list_element_metadata helper

parent 8d6f4b69
No related branches found
No related tags found
1 merge request!485Allow to set `load_parents` parameter while using `list_element_metadata` helper
Pipeline #154135 passed
......@@ -178,16 +178,24 @@ class MetaDataMixin:
return created_metadata_list
def list_element_metadata(
self, element: Element | CachedElement
self, element: Element | CachedElement, load_parents: bool | None = None
) -> list[dict[str, str]]:
"""
List all metadata linked to an element.
This method does not support cache.
:param element: The element to list metadata on.
:param load_parents: Also include all metadata from the element's parents in the response.
"""
assert element and isinstance(
element, Element | CachedElement
), "element shouldn't be null and should be of type Element or CachedElement"
return self.api_client.paginate("ListElementMetaData", id=element.id)
query_params = {}
if load_parents is not None:
assert isinstance(load_parents, bool), "load_parents should be of type bool"
query_params["load_parents"] = load_parents
return self.api_client.paginate(
"ListElementMetaData", id=element.id, **query_params
)
......@@ -508,6 +508,15 @@ def test_create_metadatas_api_error(responses, mock_elements_worker):
]
def test_list_element_metadata_wrong_load_parents(fake_dummy_worker):
element = Element({"id": "element_id"})
with pytest.raises(AssertionError, match="load_parents should be of type bool"):
fake_dummy_worker.list_element_metadata(
element=element,
load_parents="not bool",
)
def test_list_element_metadata(fake_dummy_worker):
element = Element({"id": "element_id"})
fake_dummy_worker.api_client.add_response(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment