diff --git a/api/tests/unit_tests/services/enterprise/test_enterprise_service.py b/api/tests/unit_tests/services/enterprise/test_enterprise_service.py deleted file mode 100644 index b4201aa061..0000000000 --- a/api/tests/unit_tests/services/enterprise/test_enterprise_service.py +++ /dev/null @@ -1,125 +0,0 @@ -"""Unit tests for enterprise service integrations. - -This module covers the enterprise-only default workspace auto-join behavior: -- Enterprise mode disabled: no external calls -- Successful join / skipped join: no errors -- Failures (network/invalid response/invalid UUID): soft-fail wrapper must not raise -""" - -from unittest.mock import patch - -import pytest - -from services.enterprise.enterprise_service import ( - DefaultWorkspaceJoinResult, - EnterpriseService, - try_join_default_workspace, -) - - -class TestJoinDefaultWorkspace: - def test_join_default_workspace_success(self): - account_id = "11111111-1111-1111-1111-111111111111" - response = {"workspace_id": "22222222-2222-2222-2222-222222222222", "joined": True, "message": "ok"} - - with patch("services.enterprise.enterprise_service.EnterpriseRequest.send_request") as mock_send_request: - mock_send_request.return_value = response - - result = EnterpriseService.join_default_workspace(account_id=account_id) - - assert isinstance(result, DefaultWorkspaceJoinResult) - assert result.workspace_id == response["workspace_id"] - assert result.joined is True - assert result.message == "ok" - - mock_send_request.assert_called_once_with( - "POST", - "/default-workspace/members", - json={"account_id": account_id}, - ) - - def test_join_default_workspace_invalid_response_format_raises(self): - account_id = "11111111-1111-1111-1111-111111111111" - - with patch("services.enterprise.enterprise_service.EnterpriseRequest.send_request") as mock_send_request: - mock_send_request.return_value = "not-a-dict" - - with pytest.raises(ValueError, match="Invalid response format"): - EnterpriseService.join_default_workspace(account_id=account_id) - - def test_join_default_workspace_invalid_account_id_raises(self): - with pytest.raises(ValueError): - EnterpriseService.join_default_workspace(account_id="not-a-uuid") - - -class TestTryJoinDefaultWorkspace: - def test_try_join_default_workspace_enterprise_disabled_noop(self): - with ( - patch("services.enterprise.enterprise_service.dify_config") as mock_config, - patch("services.enterprise.enterprise_service.EnterpriseService.join_default_workspace") as mock_join, - ): - mock_config.ENTERPRISE_ENABLED = False - - try_join_default_workspace("11111111-1111-1111-1111-111111111111") - - mock_join.assert_not_called() - - def test_try_join_default_workspace_successful_join_does_not_raise(self): - account_id = "11111111-1111-1111-1111-111111111111" - - with ( - patch("services.enterprise.enterprise_service.dify_config") as mock_config, - patch("services.enterprise.enterprise_service.EnterpriseService.join_default_workspace") as mock_join, - ): - mock_config.ENTERPRISE_ENABLED = True - mock_join.return_value = DefaultWorkspaceJoinResult( - workspace_id="22222222-2222-2222-2222-222222222222", - joined=True, - message="ok", - ) - - # Should not raise - try_join_default_workspace(account_id) - - mock_join.assert_called_once_with(account_id=account_id) - - def test_try_join_default_workspace_skipped_join_does_not_raise(self): - account_id = "11111111-1111-1111-1111-111111111111" - - with ( - patch("services.enterprise.enterprise_service.dify_config") as mock_config, - patch("services.enterprise.enterprise_service.EnterpriseService.join_default_workspace") as mock_join, - ): - mock_config.ENTERPRISE_ENABLED = True - mock_join.return_value = DefaultWorkspaceJoinResult( - workspace_id="", - joined=False, - message="no default workspace configured", - ) - - # Should not raise - try_join_default_workspace(account_id) - - mock_join.assert_called_once_with(account_id=account_id) - - def test_try_join_default_workspace_api_failure_soft_fails(self): - account_id = "11111111-1111-1111-1111-111111111111" - - with ( - patch("services.enterprise.enterprise_service.dify_config") as mock_config, - patch("services.enterprise.enterprise_service.EnterpriseService.join_default_workspace") as mock_join, - ): - mock_config.ENTERPRISE_ENABLED = True - mock_join.side_effect = Exception("network failure") - - # Should not raise - try_join_default_workspace(account_id) - - mock_join.assert_called_once_with(account_id=account_id) - - def test_try_join_default_workspace_invalid_account_id_soft_fails(self): - with patch("services.enterprise.enterprise_service.dify_config") as mock_config: - mock_config.ENTERPRISE_ENABLED = True - - # Should not raise even though UUID parsing fails inside join_default_workspace - try_join_default_workspace("not-a-uuid")