Skip to content

Commit e3af2d8

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

5 files changed

Lines changed: 66 additions & 65 deletions

File tree

tests/model_explainability/trustyai_service/service/conftest.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,4 +64,3 @@ def trustyai_invalid_db_ca_secret(
6464
data_dict={"ca.crt": INVALID_TLS_CERTIFICATE},
6565
) as secret:
6666
yield secret
67-

tests/model_explainability/trustyai_service/service/multi_ns/conftest.py

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020
KSERVE_MLSERVER_SUPPORTED_MODEL_FORMATS,
2121
KSERVE_MLSERVER_ANNOTATIONS,
2222
XGBOOST,
23-
ISVC_GETTER, GAUSSIAN_CREDIT_MODEL,
23+
ISVC_GETTER,
24+
GAUSSIAN_CREDIT_MODEL,
2425
)
2526
from tests.model_explainability.trustyai_service.trustyai_service_utils import (
2627
TRUSTYAI_SERVICE_NAME,
@@ -42,35 +43,35 @@
4243
@pytest.fixture(scope="class")
4344
def model_namespaces(request, admin_client) -> Generator[List[Namespace], Any, None]:
4445
with ExitStack() as stack:
45-
4646
namespaces = [
47-
stack.enter_context(
48-
create_ns(
49-
client=admin_client, name=param["name"]
50-
)
51-
)
52-
for param in request.param
47+
stack.enter_context(create_ns(client=admin_client, name=param["name"])) for param in request.param
5348
]
5449
yield namespaces
5550

51+
5652
@pytest.fixture(scope="class")
57-
def minio_data_connection_multi_ns(request, admin_client, model_namespaces, minio_service) -> Generator[List[Secret], Any, None]:
53+
def minio_data_connection_multi_ns(
54+
request, admin_client, model_namespaces, minio_service
55+
) -> Generator[List[Secret], Any, None]:
5856
with ExitStack() as stack:
5957
secrets = [
6058
stack.enter_context(
6159
create_minio_data_connection_secret(
6260
minio_service=minio_service,
6361
model_namespace=ns.name,
6462
aws_s3_bucket=param["bucket"],
65-
client=admin_client
63+
client=admin_client,
6664
)
6765
)
6866
for ns, param in zip(model_namespaces, request.param)
6967
]
7068
yield secrets
7169

70+
7271
@pytest.fixture(scope="class")
73-
def trustyai_service_with_pvc_storage_multi_ns(admin_client, model_namespaces, cluster_monitoring_config, user_workload_monitoring_config) -> Generator[List[TrustyAIService], Any, None]:
72+
def trustyai_service_with_pvc_storage_multi_ns(
73+
admin_client, model_namespaces, cluster_monitoring_config, user_workload_monitoring_config
74+
) -> Generator[List[TrustyAIService], Any, None]:
7475
with ExitStack() as stack:
7576
services = [
7677
stack.enter_context(
@@ -89,6 +90,7 @@ def trustyai_service_with_pvc_storage_multi_ns(admin_client, model_namespaces, c
8990
]
9091
yield services
9192

93+
9294
@pytest.fixture(scope="class")
9395
def mlserver_runtime_multi_ns(admin_client, model_namespaces) -> Generator[List[ServingRuntime], Any, None]:
9496
with ExitStack() as stack:
@@ -110,6 +112,7 @@ def mlserver_runtime_multi_ns(admin_client, model_namespaces) -> Generator[List[
110112
]
111113
yield runtimes
112114

115+
113116
@pytest.fixture(scope="class")
114117
def gaussian_credit_model_multi_ns(
115118
admin_client,
@@ -118,7 +121,7 @@ def gaussian_credit_model_multi_ns(
118121
minio_service,
119122
minio_data_connection_multi_ns,
120123
mlserver_runtime_multi_ns,
121-
trustyai_service_with_pvc_storage_multi_ns
124+
trustyai_service_with_pvc_storage_multi_ns,
122125
) -> Generator[List[InferenceService], Any, None]:
123126
with ExitStack() as stack:
124127
models = []
@@ -134,9 +137,9 @@ def gaussian_credit_model_multi_ns(
134137
storage_path=GAUSSIAN_CREDIT_MODEL_STORAGE_PATH,
135138
enable_auth=True,
136139
wait_for_predictor_pods=False,
137-
resources=GAUSSIAN_CREDIT_MODEL_RESOURCES
140+
resources=GAUSSIAN_CREDIT_MODEL_RESOURCES,
138141
)
139-
isvc = stack.enter_context(isvc_context) # noqa: FCN001
142+
isvc = stack.enter_context(isvc_context) # noqa: FCN001
140143

141144
wait_for_isvc_deployment_registered_by_trustyai_service(
142145
client=admin_client,
@@ -168,6 +171,7 @@ def isvc_getter_role_multi_ns(admin_client, model_namespaces) -> Generator[List[
168171
]
169172
yield roles
170173

174+
171175
@pytest.fixture(scope="class")
172176
def isvc_getter_role_binding_multi_ns(
173177
admin_client,
@@ -190,6 +194,7 @@ def isvc_getter_role_binding_multi_ns(
190194
]
191195
yield bindings
192196

197+
193198
@pytest.fixture(scope="class")
194199
def isvc_getter_token_secret_multi_ns(
195200
admin_client,
@@ -211,12 +216,10 @@ def isvc_getter_token_secret_multi_ns(
211216
]
212217
yield secrets
213218

219+
214220
@pytest.fixture(scope="class")
215221
def isvc_getter_token_multi_ns(
216222
isvc_getter_service_account_multi_ns,
217223
isvc_getter_token_secret_multi_ns,
218224
) -> List[str]:
219-
return [
220-
create_inference_token(model_service_account=sa)
221-
for sa in isvc_getter_service_account_multi_ns
222-
]
225+
return [create_inference_token(model_service_account=sa) for sa in isvc_getter_service_account_multi_ns]
Lines changed: 42 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
import pytest
2-
from tests.model_explainability.trustyai_service.constants import (
3-
DRIFT_BASE_DATA_PATH
4-
)
2+
from tests.model_explainability.trustyai_service.constants import DRIFT_BASE_DATA_PATH
53
from tests.model_explainability.trustyai_service.trustyai_service_utils import (
64
send_inferences_and_verify_trustyai_service_registered,
75
verify_upload_data_to_trustyai_service,
@@ -12,6 +10,7 @@
1210
from utilities.constants import MinIo
1311
from utilities.manifests.openvino import OPENVINO_KSERVE_INFERENCE_CONFIG
1412

13+
1514
@pytest.mark.usefixtures("minio_pod")
1615
@pytest.mark.parametrize(
1716
"model_namespaces, minio_pod, minio_data_connection_multi_ns",
@@ -25,16 +24,15 @@
2524
[
2625
{"bucket": MinIo.Buckets.MODELMESH_EXAMPLE_MODELS},
2726
{"bucket": MinIo.Buckets.MODELMESH_EXAMPLE_MODELS},
28-
]
27+
],
2928
),
3029
],
3130
indirect=True,
3231
)
33-
3432
class TestTrustyAIServiceMultipleNS:
3533
"""Verifies TrustyAIService operations across multiple namespaces,
36-
i.e. registering inference requests, uploading data, scheduling and deleting metrics,
37-
that can be performed with a TrustyAIService metric(drift, in this case)"""
34+
i.e. registering inference requests, uploading data, scheduling and deleting metrics,
35+
that can be performed with a TrustyAIService metric(drift, in this case)"""
3836

3937
def test_drift_send_inference_and_verify_trustyai_service_multiple_ns(
4038
self,
@@ -44,8 +42,9 @@ def test_drift_send_inference_and_verify_trustyai_service_multiple_ns(
4442
gaussian_credit_model_multi_ns,
4543
isvc_getter_token_multi_ns,
4644
):
47-
for tai, model, token in zip (trustyai_service_with_pvc_storage_multi_ns,gaussian_credit_model_multi_ns, isvc_getter_token_multi_ns):
48-
45+
for tai, model, token in zip(
46+
trustyai_service_with_pvc_storage_multi_ns, gaussian_credit_model_multi_ns, isvc_getter_token_multi_ns
47+
):
4948
send_inferences_and_verify_trustyai_service_registered(
5049
client=admin_client,
5150
token=current_client_token,
@@ -56,7 +55,6 @@ def test_drift_send_inference_and_verify_trustyai_service_multiple_ns(
5655
inference_token=token,
5756
)
5857

59-
6058
def test_upload_data_to_trustyai_service_multiple_ns(
6159
self,
6260
admin_client,
@@ -65,46 +63,45 @@ def test_upload_data_to_trustyai_service_multiple_ns(
6563
gaussian_credit_model_multi_ns,
6664
isvc_getter_token_multi_ns,
6765
model_namespaces,
68-
) -> None:
69-
for tai in trustyai_service_with_pvc_storage_multi_ns:
70-
verify_upload_data_to_trustyai_service(
71-
client=admin_client,
72-
trustyai_service=tai,
73-
token=current_client_token,
74-
data_path=f"{DRIFT_BASE_DATA_PATH}/training_data.json",
75-
)
66+
) -> None:
67+
for tai in trustyai_service_with_pvc_storage_multi_ns:
68+
verify_upload_data_to_trustyai_service(
69+
client=admin_client,
70+
trustyai_service=tai,
71+
token=current_client_token,
72+
data_path=f"{DRIFT_BASE_DATA_PATH}/training_data.json",
73+
)
7674

7775
def test_drift_metric_schedule_meanshift_multiple_ns(
78-
self,
79-
admin_client,
80-
current_client_token,
81-
trustyai_service_with_pvc_storage_multi_ns,
82-
gaussian_credit_model_multi_ns
83-
):
84-
for tai, inference_model in zip(trustyai_service_with_pvc_storage_multi_ns, gaussian_credit_model_multi_ns):
85-
86-
verify_trustyai_service_metric_scheduling_request(
87-
client=admin_client,
88-
trustyai_service=tai,
89-
token=current_client_token,
90-
metric_name=TrustyAIServiceMetrics.Drift.MEANSHIFT,
91-
json_data={
92-
"modelId": inference_model.name,
93-
"referenceTag": "TRAINING",
94-
},
95-
)
76+
self,
77+
admin_client,
78+
current_client_token,
79+
trustyai_service_with_pvc_storage_multi_ns,
80+
gaussian_credit_model_multi_ns,
81+
):
82+
for tai, inference_model in zip(trustyai_service_with_pvc_storage_multi_ns, gaussian_credit_model_multi_ns):
83+
verify_trustyai_service_metric_scheduling_request(
84+
client=admin_client,
85+
trustyai_service=tai,
86+
token=current_client_token,
87+
metric_name=TrustyAIServiceMetrics.Drift.MEANSHIFT,
88+
json_data={
89+
"modelId": inference_model.name,
90+
"referenceTag": "TRAINING",
91+
},
92+
)
9693

9794
def test_drift_metric_delete_multiple_ns(
9895
self,
9996
admin_client,
10097
current_client_token,
10198
minio_data_connection_multi_ns,
102-
trustyai_service_with_pvc_storage_multi_ns
103-
):
104-
for tai in trustyai_service_with_pvc_storage_multi_ns:
105-
verify_trustyai_service_metric_delete_request(
106-
client=admin_client,
107-
trustyai_service=tai,
108-
token=current_client_token,
109-
metric_name=TrustyAIServiceMetrics.Drift.MEANSHIFT,
110-
)
99+
trustyai_service_with_pvc_storage_multi_ns,
100+
):
101+
for tai in trustyai_service_with_pvc_storage_multi_ns:
102+
verify_trustyai_service_metric_delete_request(
103+
client=admin_client,
104+
trustyai_service=tai,
105+
token=current_client_token,
106+
metric_name=TrustyAIServiceMetrics.Drift.MEANSHIFT,
107+
)

tests/model_explainability/trustyai_service/service/test_trustyai_service.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from tests.model_explainability.trustyai_service.trustyai_service_utils import (
1010
verify_upload_data_to_trustyai_service,
1111
TrustyAIServiceMetrics,
12-
verify_trustyai_service_metric_scheduling_request
12+
verify_trustyai_service_metric_scheduling_request,
1313
)
1414
from tests.model_explainability.trustyai_service.utils import (
1515
validate_trustyai_service_db_conn_failure,
@@ -44,6 +44,7 @@ def test_trustyai_service_with_invalid_db_cert(
4444
label_selector=f"app.kubernetes.io/instance={trustyai_service_with_invalid_db_cert.name}",
4545
)
4646

47+
4748
@pytest.mark.parametrize(
4849
"model_namespace",
4950
[

tests/model_explainability/trustyai_service/utils.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ def validate_trustyai_service_db_conn_failure(
115115
return True
116116
return False
117117

118+
118119
@contextmanager
119120
def create_trustyai_service(
120121
client: DynamicClient,

0 commit comments

Comments
 (0)