OpenMetadata/ingestion/tests/unit/test_ssl_manager.py

47 lines
1.6 KiB
Python
Raw Normal View History

"""
Manage SSL test cases
"""
import os
import unittest
from pydantic import SecretStr
from metadata.utils.ssl_manager import SSLManager
class SSLManagerTest(unittest.TestCase):
"""
Tests to verify the functionality of SSLManager
"""
def setUp(self):
self.ca = SecretStr("CA certificate content")
self.key = SecretStr("Private key content")
self.cert = SecretStr("Certificate content")
self.ssl_manager = SSLManager(self.ca, self.key, self.cert)
def tearDown(self):
self.ssl_manager.cleanup_temp_files()
def test_create_temp_file(self):
content = SecretStr("Test content")
temp_file = self.ssl_manager.create_temp_file(content)
self.assertTrue(os.path.exists(temp_file))
with open(temp_file, "r", encoding="UTF-8") as file:
file_content = file.read()
self.assertEqual(file_content, content.get_secret_value())
content = SecretStr("")
temp_file = self.ssl_manager.create_temp_file(content)
self.assertTrue(os.path.exists(temp_file))
with open(temp_file, "r", encoding="UTF-8") as file:
file_content = file.read()
self.assertEqual(file_content, content.get_secret_value())
with self.assertRaises(AttributeError):
content = None
self.ssl_manager.create_temp_file(content)
def test_cleanup_temp_files(self):
temp_file = self.ssl_manager.create_temp_file(SecretStr("Test content"))
self.ssl_manager.cleanup_temp_files()
self.assertFalse(os.path.exists(temp_file))