feat: enhance Obsidian API configuration with path support and implement async lifespan for server
This commit is contained in:
40
tests/integration_test.py
Normal file
40
tests/integration_test.py
Normal file
@@ -0,0 +1,40 @@
|
||||
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()
|
Reference in New Issue
Block a user