Spaces:
Running
Running
File size: 1,081 Bytes
499170b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
"""Unit tests for WebTool."""
from unittest.mock import MagicMock
import pytest
from src.tools.websearch import WebTool
class TestWebTool:
"""Tests for WebTool."""
@pytest.mark.asyncio
async def test_search_returns_evidence(self, mocker):
"""WebTool should return Evidence objects from search."""
mock_results = [
{
"title": "Drug Repurposing Article",
"href": "https://example.com/article",
"body": "Some content about drug repurposing...",
}
]
mock_ddgs = MagicMock()
mock_ddgs.__enter__ = MagicMock(return_value=mock_ddgs)
mock_ddgs.__exit__ = MagicMock(return_value=None)
mock_ddgs.text = MagicMock(return_value=mock_results)
mocker.patch("src.tools.websearch.DDGS", return_value=mock_ddgs)
tool = WebTool()
results = await tool.search("drug repurposing")
assert len(results) == 1
assert results[0].citation.source == "web"
assert "Drug Repurposing" in results[0].citation.title
|