<!-- CURSOR_SUMMARY --> > [!NOTE] > **Medium Risk** > Touches multiple toolkits’ runtime entrypoints and context/error/auth plumbing, so breakage risk is mainly around invocation/packaging and tool execution wiring rather than business logic. > > **Overview** > Migrates the BrightData, ClickHouse, LinkedIn, Math, MongoDB, Postgres, and Zendesk OSS toolkits from `arcade-tdk` to `arcade-mcp-server` APIs by updating tool decorators, `Context` types, auth classes, and exception imports. > > Adds per-toolkit `__main__.py` files that construct an `MCPApp`, register module tools, and run via configurable transport/host/port; corresponding `pyproject.toml` updates bump versions, drop `arcade-tdk`/`arcade-serve` deps, and add `project.scripts` console entrypoints. > > Updates tests and eval suites to use `arcade_mcp_server.Context` (mocked) and switches eval `ToolCatalog` imports to `arcade_core`. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 9b3e31acb4b35e1d72efd47e2d279c5b19e3ecb0. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
31 lines
796 B
Python
31 lines
796 B
Python
import pytest
|
|
from arcade_mcp_server.exceptions import ToolExecutionError
|
|
|
|
from arcade_math.tools.rational import (
|
|
gcd,
|
|
lcm,
|
|
)
|
|
|
|
|
|
def test_gcd():
|
|
assert gcd("-15", "-5") == "5"
|
|
assert gcd("15", "0") == "15"
|
|
assert gcd("15", "-2") == "1"
|
|
assert gcd("15", "-0") == "15"
|
|
assert gcd("15", "5") == "5"
|
|
assert gcd("7", "13") == "1"
|
|
assert gcd("-13", "13") == "13"
|
|
with pytest.raises(ToolExecutionError):
|
|
gcd("15.0", "5.0")
|
|
|
|
|
|
def test_lcm():
|
|
assert lcm("-15", "-5") == "15"
|
|
assert lcm("15", "0") == "0"
|
|
assert lcm("15", "-2") == "30"
|
|
assert lcm("15", "-0") == "0"
|
|
assert lcm("15", "5") == "15"
|
|
assert lcm("7", "13") == "91"
|
|
assert lcm("-13", "13") == "13"
|
|
with pytest.raises(ToolExecutionError):
|
|
lcm("15.0", "5.0")
|