mirror of
				https://github.com/open-metadata/OpenMetadata.git
				synced 2025-10-27 00:31:42 +00:00 
			
		
		
		
	
		
			
	
	
		
			64 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			64 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | import unittest | ||
|  | from unittest.mock import patch | ||
|  | 
 | ||
|  | from metadata.clients.azure_client import AzureClient | ||
|  | from metadata.generated.schema.security.credentials.azureCredentials import ( | ||
|  |     AzureCredentials, | ||
|  | ) | ||
|  | 
 | ||
|  | 
 | ||
|  | class TestAzureClient(unittest.TestCase): | ||
|  |     @patch("azure.identity.ClientSecretCredential") | ||
|  |     @patch("azure.identity.DefaultAzureCredential") | ||
|  |     def test_create_client( | ||
|  |         self, | ||
|  |         mock_default_credential, | ||
|  |         mock_client_secret_credential, | ||
|  |     ): | ||
|  |         # Test with ClientSecretCredential | ||
|  |         credentials = AzureCredentials( | ||
|  |             clientId="clientId", clientSecret="clientSecret", tenantId="tenantId" | ||
|  |         ) | ||
|  |         instance = AzureClient(credentials) | ||
|  |         instance.create_client() | ||
|  | 
 | ||
|  |         mock_client_secret_credential.assert_called_once() | ||
|  |         mock_client_secret_credential.reset_mock() | ||
|  | 
 | ||
|  |         credentials = AzureCredentials( | ||
|  |             clientId="clientId", | ||
|  |         ) | ||
|  |         instance = AzureClient(credentials) | ||
|  | 
 | ||
|  |         instance.create_client() | ||
|  | 
 | ||
|  |         mock_default_credential.assert_called_once() | ||
|  | 
 | ||
|  |     @patch("azure.storage.blob.BlobServiceClient") | ||
|  |     def test_create_blob_client(self, mock_blob_service_client): | ||
|  |         credentials = AzureCredentials( | ||
|  |             clientId="clientId", clientSecret="clientSecret", tenantId="tenantId" | ||
|  |         ) | ||
|  |         with self.assertRaises(ValueError): | ||
|  |             AzureClient(credentials=credentials).create_blob_client() | ||
|  | 
 | ||
|  |         credentials.accountName = "accountName" | ||
|  |         AzureClient(credentials=credentials).create_blob_client() | ||
|  |         mock_blob_service_client.assert_called_once() | ||
|  | 
 | ||
|  |     @patch("azure.keyvault.secrets.SecretClient") | ||
|  |     def test_create_secret_client(self, mock_secret_client): | ||
|  |         credentials = AzureCredentials( | ||
|  |             clientId="clientId", clientSecret="clientSecret", tenantId="tenantId" | ||
|  |         ) | ||
|  |         with self.assertRaises(ValueError): | ||
|  |             AzureClient(credentials=credentials).create_secret_client() | ||
|  | 
 | ||
|  |         credentials.vaultName = "vaultName" | ||
|  |         AzureClient(credentials=credentials).create_secret_client() | ||
|  |         mock_secret_client.assert_called_once() | ||
|  | 
 | ||
|  | 
 | ||
|  | if __name__ == "__main__": | ||
|  |     unittest.main() |