import os import sys import unittest # Add the src directory to the Python path sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../src'))) from mcp_obsidian import obsidian class TestObsidianIntegration(unittest.TestCase): def setUp(self): """Set up the environment variables for the test.""" os.environ['OBSIDIAN_API_KEY'] = 'REDACTED_API_KEY' os.environ['OBSIDIAN_HOST'] = 'http://obsidian.obsidian.svc.cluster.local:27123' def test_connection(self): """Test the connection to the Obsidian API.""" try: protocol, host, port, path = obsidian.Obsidian.parse_host_config(os.environ['OBSIDIAN_HOST']) api = obsidian.Obsidian( api_key=os.environ['OBSIDIAN_API_KEY'], protocol=protocol, host=host, port=port, path=path, verify_ssl=False ) # Use a basic API call to verify the connection files = api.list_files_in_vault() self.assertIsNotNone(files) print("Successfully connected to Obsidian API and listed files.") except Exception as e: self.fail(f"Failed to connect to Obsidian API: {e}") if __name__ == '__main__': unittest.main()