Skip to content
Snippets Groups Projects
Commit 7440a486 authored by NolanB's avatar NolanB
Browse files

Modif the create_metadata() method and its tests with the review

parent f6ae00c4
No related branches found
No related tags found
No related merge requests found
Pipeline #79507 passed
......@@ -129,28 +129,27 @@ class MetaDataMixin(object):
metadata_list, list
), "type shouldn't be null and should be of type list of MetaDataBulkItem"
assert (
len(metadata_list) >= 3
), "The metadata_list does not contain the correct amount of data"
type = metadata_list[0]
name = metadata_list[1]
value = metadata_list[2]
assert type and isinstance(
type, MetaType
), "name shouldn't be null and should be of type MetaType"
assert name and isinstance(
name, str
), "name shouldn't be null and should be of type str"
assert (
value and isinstance(value, str) or value and isinstance(value, float)
), "value shouldn't be null and should be of type str or float"
if len(metadata_list) > 3:
entity_id = metadata_list[3]
for index, metadata in enumerate(metadata_list):
assert isinstance(
metadata, dict
), f"Element at index {index} in metadata_list: Should be of type dict"
type = metadata.get("type")
name = metadata.get("name")
value = metadata.get("value")
entity_id = metadata.get("entity_id")
assert type and isinstance(
type, MetaType
), f"Element at index {index} in metadata_list: type shouldn't be null and should be of type MetaType"
assert name and isinstance(
name, str
), f"Element at index {index} in metadata_list: name shouldn't be null and should be of type str"
assert (
value and isinstance(value, str) or value and isinstance(value, float)
), f"Element at index {index} in metadata_list: value shouldn't be null and should be of type str or number"
assert entity_id is None or isinstance(
entity_id, str
), "entity_id should be None or a str"
), f"Element at index {index} in metadata_list: entity_id should be None or a str"
metadatabulk = self.request(
"CreateMetaDataBulk",
......
......@@ -201,11 +201,47 @@ def test_create_metadata(responses, mock_elements_worker):
@pytest.mark.parametrize(
"metadatas",
[
([MetaType("text"), "fake_name", "fake_value"]),
([MetaType("text"), "fake_name", "fake_value", "fake_entity_id"]),
([MetaType("text"), "fake_name", "fake_value", None]),
([MetaType("text"), "fake_name", 13.5, None]),
([MetaType("text"), "fake_name", 13.5, "fake_entity_id"]),
([{"type": MetaType("text"), "name": "fake_name", "value": "fake_value"}]),
(
[
{
"type": MetaType("text"),
"name": "fake_name",
"value": "fake_value",
"entity_id": "fake_entity_id",
}
]
),
(
[
{
"type": MetaType("text"),
"name": "fake_name",
"value": "fake_value",
"entity_id": None,
}
]
),
(
[
{
"type": MetaType("text"),
"name": "fake_name",
"value": 13.5,
"entity_id": None,
}
]
),
(
[
{
"type": MetaType("text"),
"name": "fake_name",
"value": 13.5,
"entity_id": "fake_entity_id",
}
]
),
],
)
def test_create_metadatas(fake_dummy_worker, metadatas):
......
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