Skip to content

Commit

Permalink
updated tests
Browse files Browse the repository at this point in the history
  • Loading branch information
mwojtyczka committed Jan 3, 2025
1 parent eaffc5a commit 8082e7c
Showing 1 changed file with 8 additions and 12 deletions.
20 changes: 8 additions & 12 deletions tests/unit/test_installer.py
Original file line number Diff line number Diff line change
@@ -1,21 +1,19 @@
from unittest.mock import patch, MagicMock, create_autospec
import pytest
from databricks.labs.dqx.installer.install import WorkspaceInstaller, ManyError
from databricks.sdk import WorkspaceClient


def test_installer_executed_outside_workspace():
ws_client = create_autospec(WorkspaceClient(), instance=True)
mock_ws_client = MagicMock()
with pytest.raises(SystemExit) as exc_info:
WorkspaceInstaller(ws_client, environ={"DATABRICKS_RUNTIME_VERSION": "7.3"})
WorkspaceInstaller(mock_ws_client, environ={"DATABRICKS_RUNTIME_VERSION": "7.3"})
assert str(exc_info.value) == "WorkspaceInstaller is not supposed to be executed in Databricks Runtime"


def test_configure_raises_timeout_error():
mock_configure = MagicMock(side_effect=TimeoutError("Mocked timeout error"))

ws_client = create_autospec(WorkspaceClient(), instance=True)
installer = WorkspaceInstaller(ws_client)
mock_ws_client = MagicMock()
installer = WorkspaceInstaller(mock_ws_client)

with patch.object(installer, 'configure', mock_configure):
with pytest.raises(TimeoutError) as exc_info:
Expand All @@ -27,9 +25,8 @@ def test_configure_raises_timeout_error():
def test_configure_raises_single_error():
single_error = ValueError("Single error")
mock_configure = MagicMock(side_effect=ManyError([single_error]))

ws_client = create_autospec(WorkspaceClient(), instance=True)
installer = WorkspaceInstaller(ws_client)
mock_ws_client = MagicMock()
installer = WorkspaceInstaller(mock_ws_client)

with patch.object(installer, 'configure', mock_configure):
with pytest.raises(ManyError) as exc_info:
Expand All @@ -43,9 +40,8 @@ def test_configure_raises_many_errors():
second_error = ValueError("Second error")
errors = [first_error, second_error]
mock_configure = MagicMock(side_effect=ManyError(errors))

ws_client = create_autospec(WorkspaceClient(), instance=True)
installer = WorkspaceInstaller(ws_client)
mock_ws_client = MagicMock()
installer = WorkspaceInstaller(mock_ws_client)

with patch.object(installer, 'configure', mock_configure):
with pytest.raises(ManyError) as exc_info:
Expand Down

0 comments on commit 8082e7c

Please sign in to comment.