"""Tests for Tavliy web search.""" import pytest import logging from modules.interfaces.interfaceChatModel import ActionResult from modules.interfaces.interface_web_model import WebSearchRequest from modules.connectors.connector_tavily import ConnectorTavily logger = logging.getLogger(__name__) @pytest.mark.asyncio @pytest.mark.expensive async def test_tavily_connector_search_test_live_api(): logger.info("Testing Tavliy connector with live API calls") # Test request request = WebSearchRequest(query="How old is the Earth?", max_results=5) # Tavily instance connector_tavily = await ConnectorTavily.create() # Search test action_result = await connector_tavily.search_urls(request=request) # Check results assert isinstance(action_result, ActionResult) logger.info("=" * 20) logger.info(f"Action result success status: {action_result.success}") logger.info(f"Action result error: {action_result.error}") logger.info(f"Action result label: {action_result.resultLabel}") logger.info("Documents:") for doc in action_result.documents: logger.info("-" * 10) logger.info(f" - Document Name: {doc.documentName}") logger.info(f" - Document Mime Type: {doc.mimeType}") logger.info(f" - Document Data: {doc.documentData}")