Skip to content

Commit fcf4925

Browse files
committed
Added a getter and a setter for __metadata of DatasetItemEntity. Updated the tests as well.
1 parent c49a6fd commit fcf4925

File tree

6 files changed

+35
-28
lines changed

6 files changed

+35
-28
lines changed

ote_sdk/ote_sdk/entities/dataset_item.py

+11-4
Original file line numberDiff line numberDiff line change
@@ -118,9 +118,16 @@ def __init__(
118118
set() if ignored_labels is None else set(ignored_labels)
119119
)
120120

121-
@property
122-
def metadata(self) -> Sequence[MetadataItemEntity]:
123-
"""Provides access to metadata."""
121+
def set_metadata(self, metadata: List[MetadataItemEntity]):
122+
"""
123+
Sets the metadata
124+
"""
125+
self.__metadata = metadata
126+
127+
def get_metadata(self) -> List[MetadataItemEntity]:
128+
"""
129+
Returns the metadata
130+
"""
124131
return self.__metadata
125132

126133
@property
@@ -486,6 +493,6 @@ def get_metadata_by_name_and_model(
486493
"""
487494
return [
488495
meta
489-
for meta in self.metadata
496+
for meta in self.get_metadata()
490497
if meta.data.name == name and meta.model == model
491498
]

ote_sdk/ote_sdk/tests/configuration/elements/test_primitive_parameters.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ def check_configurable_integer(
140140
assert integer_instance._default == 100
141141
assert integer_instance.type == int
142142
assert len(integer_instance._validator._validators) == 2
143-
assert integer_instance.metadata == expected_metadata
143+
assert integer_instance.get_metadata() == expected_metadata
144144

145145
# Checking _CountingAttr object returned by "configurable_integer" for default values of optional parameters
146146
default_value = 100
@@ -243,7 +243,7 @@ def check_configurable_float(
243243
assert isinstance(float_instance, _make._CountingAttr)
244244
assert float_instance._default == 100.1
245245
assert float_instance.type == float
246-
assert float_instance.metadata == expected_metadata
246+
assert float_instance.get_metadata() == expected_metadata
247247

248248
# Checking _CountingAttr object returned by "configurable_float" for default values of optional parameters
249249
default_value = 100.1
@@ -343,7 +343,7 @@ def check_configurable_boolean(
343343
boolean_instance._validator, validators._InstanceOfValidator # type: ignore
344344
)
345345
assert boolean_instance._validator.type == bool
346-
assert boolean_instance.metadata == expected_metadata
346+
assert boolean_instance.get_metadata() == expected_metadata
347347

348348
# Checking _CountingAttr object returned by "configurable_boolean" for default values of optional parameters
349349
default_value = True
@@ -435,7 +435,7 @@ def check_float_selectable(
435435
assert isinstance(float_selectable_instance, _make._CountingAttr)
436436
assert float_selectable_instance._default
437437
assert float_selectable_instance.type == float
438-
assert float_selectable_instance.metadata == expected_metadata
438+
assert float_selectable_instance.get_metadata() == expected_metadata
439439

440440
# Checking _CountingAttr object returned by "float_selectable" for default values of optional parameters
441441
default_value = 0.1
@@ -534,7 +534,7 @@ def check_selectable(
534534
assert isinstance(selectable_instance, _make._CountingAttr)
535535
assert selectable_instance._default == SomeEnumSelectable.OPTION_C
536536
assert selectable_instance.type == ConfigurableEnum
537-
assert selectable_instance.metadata == expected_metadata
537+
assert selectable_instance.get_metadata() == expected_metadata
538538

539539
# Checking _CountingAttr object returned by "selectable" for default values of optional parameters
540540
default_value = SomeEnumSelectable.OPTION_C

ote_sdk/ote_sdk/tests/configuration/helper/test_create.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -479,7 +479,7 @@ def test_gather_parameter_arguments_and_values_from_dict(self):
479479
)
480480
assert isinstance(argument, _make._CountingAttr)
481481
assert argument.type == int
482-
metadata = argument.metadata
482+
metadata = argument.get_metadata()
483483
assert metadata.get("default_value") == 70
484484
assert metadata.get("description") == "Default integer description"
485485
assert metadata.get("header") == "non selectable parameter header"
@@ -492,7 +492,7 @@ def test_gather_parameter_arguments_and_values_from_dict(self):
492492
argument = arguments_and_values_dict.get("make_arguments").get("selectable")
493493
assert isinstance(argument, _make._CountingAttr)
494494
assert argument.type == ConfigurableEnum
495-
metadata = argument.metadata
495+
metadata = argument.get_metadata()
496496
assert type(metadata.get("default_value")).__name__ == "test enum"
497497
assert metadata.get("default_value").name == "test_2"
498498
assert metadata.get("default_value").value == 2

ote_sdk/ote_sdk/tests/entities/test_dataset_item.py

+8-8
Original file line numberDiff line numberDiff line change
@@ -254,12 +254,12 @@ def test_dataset_item_initialization(self):
254254
default_values_dataset_item = DatasetItemEntity(media, annotations_scene)
255255
assert default_values_dataset_item.media == media
256256
assert default_values_dataset_item.annotation_scene == annotations_scene
257-
assert not default_values_dataset_item.metadata
257+
assert not default_values_dataset_item.get_metadata()
258258
assert default_values_dataset_item.subset == Subset.NONE
259259
assert default_values_dataset_item.ignored_labels == set()
260260
# Checking attributes of DatasetItemEntity object initialized with specified optional parameters
261261
roi = DatasetItemParameters().roi()
262-
metadata = DatasetItemParameters.metadata()
262+
metadata = DatasetItemParameters.get_metadata()
263263
subset = Subset.TESTING
264264
ignored_labels = set(DatasetItemParameters().labels())
265265
specified_values_dataset_item = DatasetItemEntity(
@@ -268,7 +268,7 @@ def test_dataset_item_initialization(self):
268268
assert specified_values_dataset_item.media == media
269269
assert specified_values_dataset_item.annotation_scene == annotations_scene
270270
assert specified_values_dataset_item.roi == roi
271-
assert specified_values_dataset_item.metadata == metadata
271+
assert specified_values_dataset_item.get_metadata() == metadata
272272
assert specified_values_dataset_item.subset == subset
273273
assert specified_values_dataset_item.ignored_labels == ignored_labels
274274

@@ -923,7 +923,7 @@ def test_dataset_item_deepcopy(self):
923923
dataset_item.annotation_scene.shapes == copy_dataset.annotation_scene.shapes
924924
)
925925
assert dataset_item.roi == copy_dataset.roi
926-
assert dataset_item.metadata == copy_dataset.metadata
926+
assert dataset_item.get_metadata() == copy_dataset.get_metadata()
927927
assert dataset_item.subset == copy_dataset.subset
928928

929929
@pytest.mark.priority_medium
@@ -946,15 +946,15 @@ def test_dataset_item_append_metadata_item(self):
946946
2. Check "metadata" attribute after "append_metadata_item" method with specified "model" parameter
947947
"""
948948
dataset_item = DatasetItemParameters().dataset_item()
949-
expected_metadata = list(dataset_item.metadata)
949+
expected_metadata = list(dataset_item.get_metadata())
950950
# Checking metadata attribute returned after "append_metadata_item" method with non-specified "model" parameter
951951
data_to_append = TensorEntity(
952952
name="appended_metadata",
953953
numpy=np.random.uniform(low=0.0, high=255.0, size=(10, 15, 3)),
954954
)
955955
expected_metadata.append(MetadataItemEntity(data=data_to_append))
956956
dataset_item.append_metadata_item(data=data_to_append)
957-
assert list(dataset_item.metadata) == expected_metadata
957+
assert list(dataset_item.get_metadata()) == expected_metadata
958958
# Checking metadata attribute returned after "append_metadata_item" method with specified "model" parameter
959959
metadata_item_with_model = self.metadata_item_with_model()
960960
data_to_append = metadata_item_with_model.data
@@ -964,7 +964,7 @@ def test_dataset_item_append_metadata_item(self):
964964
)
965965
expected_metadata.append(new_metadata_item_with_model)
966966
dataset_item.append_metadata_item(data_to_append, model_to_append)
967-
assert list(dataset_item.metadata) == expected_metadata
967+
assert list(dataset_item.get_metadata()) == expected_metadata
968968

969969
@pytest.mark.priority_medium
970970
@pytest.mark.unit
@@ -992,7 +992,7 @@ def test_dataset_item_get_metadata_by_name_and_model(self):
992992
metadata_item_with_model = self.metadata_item_with_model()
993993
dataset_model = metadata_item_with_model.model
994994
dataset_item.append_metadata_item(metadata_item_with_model.data, dataset_model)
995-
dataset_metadata = list(dataset_item.metadata)
995+
dataset_metadata = list(dataset_item.get_metadata())
996996
# Checking "get_metadata_by_name_and_model" method for "model" parameter is "None"
997997
assert dataset_item.get_metadata_by_name_and_model("test_metadata", None) == [
998998
dataset_metadata[0]

ote_sdk/ote_sdk/tests/entities/test_task_environment.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ def test_compare_learning_parameters_num_workers(self):
165165
env.get_hyper_parameters().learning_parameters.num_workers
166166
) # "default_value"
167167
config_example_learning_parameters_num_workers = (
168-
config_example.learning_parameters._default.factory.num_workers.metadata[
168+
config_example.learning_parameters._default.factory.num_workers.get_metadata()[
169169
"default_value"
170170
]
171171
)
@@ -199,7 +199,7 @@ def test_compare_learning_parameters_batch_size(self):
199199
env.get_hyper_parameters().learning_parameters.batch_size
200200
) # "default_value"
201201
config_example_learning_parameters_batch_size = (
202-
config_example.learning_parameters._default.factory.batch_size.metadata[
202+
config_example.learning_parameters._default.factory.batch_size.get_metadata()[
203203
"default_value"
204204
]
205205
)
@@ -234,7 +234,7 @@ def test_compare_learning_parameters_num_iters(self):
234234
env.get_hyper_parameters().learning_parameters.num_iters
235235
) # "default_value"
236236
config_example_learning_parameters_num_iters = (
237-
config_example.learning_parameters._default.factory.num_iters.metadata[
237+
config_example.learning_parameters._default.factory.num_iters.get_metadata()[
238238
"default_value"
239239
]
240240
)
@@ -269,7 +269,7 @@ def test_compare_learning_parameters_learning_rate(self):
269269
env.get_hyper_parameters().learning_parameters.learning_rate
270270
) # "default_value"
271271
config_example_learning_parameters_learning_rate = (
272-
config_example.learning_parameters._default.factory.learning_rate.metadata[
272+
config_example.learning_parameters._default.factory.learning_rate.get_metadata()[
273273
"default_value"
274274
]
275275
)
@@ -313,7 +313,7 @@ def test_compare_learning_parameters_num_checkpoints(self):
313313
# Attempt to access the missing parameter in ConfigExample
314314
with pytest.raises(AttributeError):
315315
# AttributeError: type object '__LearningParameters' has no attribute 'num_checkpoints'
316-
config_example.learning_parameters._default.factory.num_checkpoints.metadata[
316+
config_example.learning_parameters._default.factory.num_checkpoints.get_metadata()[
317317
"default_value"
318318
]
319319

@@ -368,7 +368,7 @@ def test_compare_postprocessing_confidence_threshold(self):
368368
)
369369
cep = config_example.postprocessing
370370
config_example_postprocessing_confidence_threshold = (
371-
cep._default.factory.confidence_threshold.metadata["default_value"]
371+
cep._default.factory.confidence_threshold.get_metadata()["default_value"]
372372
)
373373

374374
# From dummy_config.yaml because it is missing in dummy_template.yaml "parameter_overrides"
@@ -404,7 +404,7 @@ def test_compare_postprocessing_result_based_confidence_threshold(self):
404404
cep = config_example.postprocessing
405405
def_factory = cep._default.factory
406406
rbct = def_factory.result_based_confidence_threshold
407-
config_example_postprocessing_result_based_confidence_threshold = rbct.metadata[
407+
config_example_postprocessing_result_based_confidence_threshold = rbct.get_metadata()[
408408
"default_value"
409409
]
410410

ote_sdk/ote_sdk/utils/dataset_utils.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ def get_local_subset(
9191
local_annotations,
9292
kind=item.annotation_scene.kind,
9393
),
94-
metadata=item.metadata,
94+
metadata=item.get_metadata(),
9595
subset=item.subset,
9696
roi=item.roi,
9797
ignored_labels=item.ignored_labels,
@@ -120,7 +120,7 @@ def get_global_subset(dataset: DatasetEntity) -> DatasetEntity:
120120
annotation_scene=AnnotationSceneEntity(
121121
global_annotations, kind=item.annotation_scene.kind
122122
),
123-
metadata=item.metadata,
123+
metadata=item.get_metadata(),
124124
subset=item.subset,
125125
roi=item.roi,
126126
ignored_labels=item.ignored_labels,

0 commit comments

Comments
 (0)