"""Tests for agent_tools package-level utilities."""

import pytest


class TestListTools:
    def test_returns_tool_list(self):
        from agent_tools import list_tools

        result = list_tools()
        assert isinstance(result, list)
        assert len(result) > 0

        names = {t["name"] for t in result}
        assert "query_motions" in names
        assert "pipeline_run_stage" in names
        assert "list_recent_reports" in names
        assert "list_tools" in names
        # Removed workflow tools
        assert "pipeline_check_health" not in names
        assert "generate_report" not in names

    def test_each_tool_has_required_fields(self):
        from agent_tools import list_tools

        result = list_tools()
        for tool in result:
            assert "name" in tool
            assert "signature" in tool
            assert "description" in tool


class TestAllExports:
    def test_query_motions_importable(self):
        from agent_tools import query_motions

        assert callable(query_motions)

    def test_list_tools_importable(self):
        from agent_tools import list_tools

        assert callable(list_tools)
