Skip to content

Commit 16623d0

Browse files
[pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
1 parent 227486f commit 16623d0

File tree

1 file changed

+38
-16
lines changed

1 file changed

+38
-16
lines changed

tests/model_registry/model_catalog/test_model_artifact_search.py

Lines changed: 38 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
pytestmark = [pytest.mark.usefixtures("updated_dsc_component_state_scope_session", "model_registry_namespace")]
1818
MODEL_NAME_ARTIFACT_SEARCH = "RedHatAI/Llama-3.1-8B-Instruct"
1919

20+
2021
class TestSearchArtifactsByFilterQuery:
2122
@pytest.mark.parametrize(
2223
"randomly_picked_model_from_catalog_api_by_source, invalid_filter_query",
@@ -45,7 +46,7 @@ def test_search_artifacts_by_invalid_filter_query(
4546
model_catalog_rest_url: list[str],
4647
model_registry_rest_headers: dict[str, str],
4748
randomly_picked_model_from_catalog_api_by_source: tuple[dict, str, str],
48-
invalid_filter_query: str,
49+
invalid_filter_query: str,
4950
):
5051
"""
5152
Tests the API's response to invalid filter queries syntax when searching artifacts.
@@ -64,38 +65,52 @@ def test_search_artifacts_by_invalid_filter_query(
6465
page_size=1,
6566
)
6667

67-
LOGGER.info(f"Successfully validated that invalid artifact filter query '{invalid_filter_query}' raises an error")
68+
LOGGER.info(
69+
f"Successfully validated that invalid artifact filter query '{invalid_filter_query}' raises an error"
70+
)
6871

6972
@pytest.mark.parametrize(
7073
"randomly_picked_model_from_catalog_api_by_source, filter_query, expected_value, logic_type",
7174
[
7275
pytest.param(
73-
{"catalog_id": VALIDATED_CATALOG_ID, "header_type": "registry",
74-
"model_name": MODEL_NAME_ARTIFACT_SEARCH},
76+
{
77+
"catalog_id": VALIDATED_CATALOG_ID,
78+
"header_type": "registry",
79+
"model_name": MODEL_NAME_ARTIFACT_SEARCH,
80+
},
7581
"hardware_type.string_value = 'ABC-1234'",
7682
None,
7783
None,
7884
id="test_valid_artifact_filter_query_no_results",
7985
),
8086
pytest.param(
81-
{"catalog_id": VALIDATED_CATALOG_ID, "header_type": "registry",
82-
"model_name": MODEL_NAME_ARTIFACT_SEARCH},
87+
{
88+
"catalog_id": VALIDATED_CATALOG_ID,
89+
"header_type": "registry",
90+
"model_name": MODEL_NAME_ARTIFACT_SEARCH,
91+
},
8392
"requests_per_second.double_value > 15.0",
8493
[{"key_name": "requests_per_second", "key_type": "double_value", "comparison": "min", "value": 15.0}],
8594
"and",
8695
id="test_performance_min_filter",
8796
),
8897
pytest.param(
89-
{"catalog_id": VALIDATED_CATALOG_ID, "header_type": "registry",
90-
"model_name": MODEL_NAME_ARTIFACT_SEARCH},
98+
{
99+
"catalog_id": VALIDATED_CATALOG_ID,
100+
"header_type": "registry",
101+
"model_name": MODEL_NAME_ARTIFACT_SEARCH,
102+
},
91103
"hardware_count.int_value = 8",
92104
[{"key_name": "hardware_count", "key_type": "int_value", "comparison": "exact", "value": 8}],
93105
"and",
94106
id="test_hardware_exact_filter",
95107
),
96108
pytest.param(
97-
{"catalog_id": VALIDATED_CATALOG_ID, "header_type": "registry",
98-
"model_name": MODEL_NAME_ARTIFACT_SEARCH},
109+
{
110+
"catalog_id": VALIDATED_CATALOG_ID,
111+
"header_type": "registry",
112+
"model_name": MODEL_NAME_ARTIFACT_SEARCH,
113+
},
99114
"(hardware_type.string_value = 'H100') AND (ttft_p99.double_value < 200)",
100115
[
101116
{"key_name": "hardware_type", "key_type": "string_value", "comparison": "exact", "value": "H100"},
@@ -105,8 +120,11 @@ def test_search_artifacts_by_invalid_filter_query(
105120
id="test_combined_hardware_performance_filter_and_operation",
106121
),
107122
pytest.param(
108-
{"catalog_id": VALIDATED_CATALOG_ID, "header_type": "registry",
109-
"model_name": MODEL_NAME_ARTIFACT_SEARCH},
123+
{
124+
"catalog_id": VALIDATED_CATALOG_ID,
125+
"header_type": "registry",
126+
"model_name": MODEL_NAME_ARTIFACT_SEARCH,
127+
},
110128
"(tps_mean.double_value <260) OR (hardware_type.string_value = 'A100-80')",
111129
[
112130
{"key_name": "tps_mean", "key_type": "double_value", "comparison": "max", "value": 260},
@@ -150,10 +168,12 @@ def test_filter_query_advanced_artifact_search(
150168
)
151169

152170
if expected_value is None:
153-
# Simple validation of length and size for basic filter queries
171+
# Simple validation of length and size for basic filter queries
154172
assert len(result["items"]) >= 0, f"Filter query '{filter_query}' should return valid results"
155173
assert result["size"] >= 0, f"Size should be non-negative for filter query '{filter_query}'"
156-
LOGGER.info(f"Successfully validated that filter query '{filter_query}' returns {len(result['items'])} artifacts")
174+
LOGGER.info(
175+
f"Successfully validated that filter query '{filter_query}' returns {len(result['items'])} artifacts"
176+
)
157177
else:
158178
# Advanced validation using criteria matching
159179
all_artifacts = result["items"]
@@ -172,6 +192,8 @@ def test_filter_query_advanced_artifact_search(
172192
raise ValueError(f"Invalid logic_type: {logic_type}. Must be 'and' or 'or'")
173193

174194
if validation_result:
175-
LOGGER.info(f"For Model: {model_name}, {logic_type.upper()} validation completed successfully for {len(all_artifacts)} artifacts")
195+
LOGGER.info(
196+
f"For Model: {model_name}, {logic_type.upper()} validation completed successfully for {len(all_artifacts)} artifacts"
197+
)
176198
else:
177-
assert False, f"{logic_type.upper()} filter validation failed for model {model_name}"
199+
assert False, f"{logic_type.upper()} filter validation failed for model {model_name}"

0 commit comments

Comments
 (0)