Files
voidea/tests/unit/agents/test_security_agent.py
T

64 lines
1.9 KiB
Python

"""Tests for SecurityAgent."""
import pytest
from app.agents.security_agent import SecurityAgent
@pytest.fixture
def security_agent():
return SecurityAgent()
@pytest.mark.asyncio
async def test_security_agent_initialization(security_agent):
"""Test SecurityAgent initializes correctly."""
assert security_agent.name == "security_agent"
assert security_agent.version == "1.0.0"
@pytest.mark.asyncio
async def test_security_agent_health_check(security_agent):
"""Test SecurityAgent health check."""
result = await security_agent.health_check()
assert isinstance(result, bool)
@pytest.mark.asyncio
async def test_security_agent_run(security_agent):
"""Test SecurityAgent run."""
context = {"action": "scan", "paths": ["app"]}
result = await security_agent.run(context)
assert hasattr(result, "success")
assert hasattr(result, "message")
@pytest.mark.asyncio
async def test_security_agent_full_check(security_agent):
"""Test SecurityAgent full security check."""
result = await security_agent.run({"action": "full", "paths": ["app"]})
assert hasattr(result, "success")
assert hasattr(result, "data")
@pytest.mark.asyncio
async def test_security_agent_dependencies(security_agent):
"""Test SecurityAgent dependency check."""
result = await security_agent._check_dependencies()
assert hasattr(result, "success")
@pytest.mark.asyncio
async def test_security_agent_compliance(security_agent):
"""Test SecurityAgent 152-FZ compliance check."""
result = await security_agent._check_152_fz_compliance()
assert hasattr(result, "success")
assert "warnings" in result.data
@pytest.mark.asyncio
async def test_security_agent_metrics(security_agent):
"""Test SecurityAgent metrics."""
metrics = await security_agent.get_metrics()
assert "agent_id" in metrics
assert "status" in metrics