Skip to main content
Glama

BLS MCP Server

by kovashikawa
test_mock_data.py2.79 kB
"""Tests for mock data provider.""" import pytest from bls_mcp.data.mock_data import MockDataProvider @pytest.fixture def data_provider(): """Create a mock data provider instance.""" return MockDataProvider() @pytest.mark.asyncio async def test_get_series(data_provider): """Test getting a series.""" result = await data_provider.get_series("CUUR0000SA0") assert result["series_id"] == "CUUR0000SA0" assert "data" in result assert "metadata" in result assert result["count"] > 0 @pytest.mark.asyncio async def test_get_series_with_year_filter(data_provider): """Test getting a series with year filtering.""" result = await data_provider.get_series( "CUUR0000SA0", start_year=2023, end_year=2024 ) assert result["series_id"] == "CUUR0000SA0" assert all(2023 <= int(point["year"]) <= 2024 for point in result["data"]) @pytest.mark.asyncio async def test_get_series_not_found(data_provider): """Test getting a non-existent series.""" with pytest.raises(ValueError, match="not found"): await data_provider.get_series("INVALID_SERIES") @pytest.mark.asyncio async def test_list_series(data_provider): """Test listing series.""" result = await data_provider.list_series() assert isinstance(result, list) assert len(result) > 0 assert all("series_id" in series for series in result) @pytest.mark.asyncio async def test_list_series_with_category(data_provider): """Test listing series with category filter.""" result = await data_provider.list_series(category="CPI") assert isinstance(result, list) assert all(series.get("category") == "CPI" for series in result) @pytest.mark.asyncio async def test_list_series_with_limit(data_provider): """Test listing series with limit.""" result = await data_provider.list_series(limit=3) assert len(result) <= 3 @pytest.mark.asyncio async def test_get_series_info(data_provider): """Test getting series info.""" result = await data_provider.get_series_info("CUUR0000SA0") assert result["series_id"] == "CUUR0000SA0" assert "series_title" in result assert "data_point_count" in result assert result["available_data"] is True @pytest.mark.asyncio async def test_get_series_info_not_found(data_provider): """Test getting info for non-existent series.""" with pytest.raises(ValueError, match="not found"): await data_provider.get_series_info("INVALID_SERIES") @pytest.mark.asyncio async def test_search_series(data_provider): """Test searching series.""" result = await data_provider.search_series("Food") assert isinstance(result, list) assert len(result) > 0 assert all("Food" in series["series_title"] or "Food" in series["item"] for series in result)

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kovashikawa/bls_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server