Skip to content

Commit 58a96dc

Browse files
fixing unit test cases
1 parent 3dbb2d2 commit 58a96dc

File tree

6 files changed

+40
-14
lines changed

6 files changed

+40
-14
lines changed

sdk/ml/azure-ai-ml/azure/ai/ml/entities/_feature_store/feature_store.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,9 @@ def __init__(
162162
self.managed_network = managed_network
163163

164164
@classmethod
165-
def _from_rest_object(cls, rest_obj: RestWorkspace) -> Optional["FeatureStore"]:
165+
def _from_rest_object(
166+
cls, rest_obj: RestWorkspace, v2_service_context: Optional[object] = None
167+
) -> Optional["FeatureStore"]:
166168
if not rest_obj:
167169
return None
168170

sdk/ml/azure-ai-ml/azure/ai/ml/entities/_workspace/_ai_workspaces/hub.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ def _get_schema_class(cls):
131131
return HubSchema
132132

133133
@classmethod
134-
def _from_rest_object(cls, rest_obj: RestWorkspace, v2_service_context: Optional[object]) -> Optional["Hub"]:
134+
def _from_rest_object(cls, rest_obj: RestWorkspace, v2_service_context: Optional[object] = None) -> Optional["Hub"]:
135135
if not rest_obj:
136136
return None
137137

sdk/ml/azure-ai-ml/azure/ai/ml/entities/_workspace/workspace.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -222,8 +222,6 @@ def mlflow_tracking_uri(self) -> Optional[str]:
222222
:return: Returns mlflow tracking uri of the workspace.
223223
:rtype: str
224224
"""
225-
# TODO: To check with Amit the use of this function
226-
227225
return self._mlflow_tracking_uri
228226

229227
def dump(self, dest: Union[str, PathLike, IO[AnyStr]], **kwargs: Any) -> None:
@@ -317,7 +315,9 @@ def _load(
317315
return result
318316

319317
@classmethod
320-
def _from_rest_object(cls, rest_obj: RestWorkspace, v2_service_context: Optional[object] = None) -> Optional["Workspace"]:
318+
def _from_rest_object(
319+
cls, rest_obj: RestWorkspace, v2_service_context: Optional[object] = None
320+
) -> Optional["Workspace"]:
321321

322322
if not rest_obj:
323323
return None

sdk/ml/azure-ai-ml/azure/ai/ml/operations/_workspace_operations_base.py

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -87,17 +87,21 @@ def get(self, workspace_name: Optional[str] = None, **kwargs: Any) -> Optional[W
8787
resource_group = kwargs.get("resource_group") or self._resource_group_name
8888
obj = self._operation.get(resource_group, workspace_name)
8989
v2_service_context = {}
90-
90+
9191
v2_service_context["subscription_id"] = self._subscription_id
9292
v2_service_context["workspace_name"] = workspace_name
9393
v2_service_context["resource_group_name"] = resource_group
94-
v2_service_context["auth"] = self._credentials
95-
94+
v2_service_context["auth"] = self._credentials # type: ignore
95+
9696
from urllib.parse import urlparse
97-
parsed_url = urlparse(obj.ml_flow_tracking_uri)
98-
host_url = "https://{}".format(parsed_url.netloc)
99-
v2_service_context['host_url'] = host_url
100-
97+
98+
if obj is not None and obj.ml_flow_tracking_uri:
99+
parsed_url = urlparse(obj.ml_flow_tracking_uri)
100+
host_url = "https://{}".format(parsed_url.netloc)
101+
v2_service_context["host_url"] = host_url
102+
else:
103+
v2_service_context["host_url"] = ""
104+
101105
# host_url=service_context._get_mlflow_url(),
102106
# cloud=_get_cloud_or_default(
103107
# service_context.get_auth()._cloud_type.name
@@ -436,7 +440,7 @@ def callback(_: Any, deserialized: Any, args: Any) -> Workspace:
436440
return (
437441
deserialize_callback(deserialized)
438442
if deserialize_callback
439-
else Workspace._from_rest_object(deserialized, None)
443+
else Workspace._from_rest_object(deserialized)
440444
)
441445

442446
real_callback = callback

sdk/ml/azure-ai-ml/tests/workspace/unittests/test_workspace_operations.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from typing import Optional
2-
from unittest.mock import ANY, DEFAULT, MagicMock, Mock
2+
from unittest.mock import ANY, DEFAULT, MagicMock, Mock, patch
33
from uuid import UUID, uuid4
44

55
import pytest
@@ -20,13 +20,23 @@
2020
)
2121
from azure.ai.ml.operations import WorkspaceOperations
2222
from azure.core.polling import LROPoller
23+
import urllib.parse
2324

2425

2526
@pytest.fixture
2627
def mock_credential() -> Mock:
2728
yield Mock()
2829

2930

31+
def mock_urlparse(url: str) -> urllib.parse.ParseResult:
32+
return urllib.parse.ParseResult(
33+
scheme="http", netloc="example.com", path="/index.html", params="", query="a=1&b=2", fragment=""
34+
)
35+
36+
37+
urllib.parse.urlparse = mock_urlparse
38+
39+
3040
@pytest.fixture
3141
def mock_workspace_operation(
3242
mock_workspace_scope: OperationScope,

sdk/ml/azure-ai-ml/tests/workspace/unittests/test_workspace_operations_base.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,23 @@
3131
)
3232
from azure.ai.ml.operations._workspace_operations_base import WorkspaceOperationsBase
3333
from azure.core.polling import LROPoller
34+
import urllib.parse
3435

3536

3637
@pytest.fixture
3738
def mock_credential() -> Mock:
3839
yield Mock()
3940

4041

42+
def mock_urlparse(url: str) -> urllib.parse.ParseResult:
43+
return urllib.parse.ParseResult(
44+
scheme="http", netloc="example.com", path="/index.html", params="", query="a=1&b=2", fragment=""
45+
)
46+
47+
48+
urllib.parse.urlparse = mock_urlparse
49+
50+
4151
@pytest.fixture
4252
def mock_workspace_operation_base(
4353
mock_workspace_scope: OperationScope,

0 commit comments

Comments
 (0)