arcade-mcp/toolkits/math/tests/test_miscellaneous.py
Eric Gustin ca11ec9fa3
Add toolkits (#514)
Add Linkedin, Zendesk, Math, and Postgres toolkits
2025-07-25 15:44:06 -07:00

81 lines
2.5 KiB
Python

import pytest
from arcade_tdk.errors import ToolExecutionError
from arcade_math.tools.miscellaneous import (
abs_val,
factorial,
sqrt,
)
def test_abs_val():
assert abs_val("2") == "2"
assert abs_val("-1") == "1"
assert abs_val("-1.12341234") == "1.12341234"
def test_factorial():
assert factorial("1") == "1"
assert factorial("0") == "1"
assert factorial("-0") == "1"
assert factorial("23") == "25852016738884976640000"
assert factorial("24") == "620448401733239439360000"
assert factorial("10") == "3628800"
with pytest.raises(ToolExecutionError):
factorial("-1")
with pytest.raises(ToolExecutionError):
factorial("-10")
with pytest.raises(ToolExecutionError):
factorial("0.0000")
with pytest.raises(ToolExecutionError):
factorial("-0.0")
with pytest.raises(ToolExecutionError):
factorial("1.0")
with pytest.raises(ToolExecutionError):
factorial("-1.0")
with pytest.raises(ToolExecutionError):
factorial("23.0")
def test_sqrt():
assert sqrt("1") == "1"
assert sqrt("0") == "0"
assert sqrt("-0") == "-0"
assert (
sqrt("23") == "4.79583152331271954159743806416269391999670704190"
"4129346485309114448257235907464082492191446436918861"
)
assert (
sqrt("24") == "4.89897948556635619639456814941178278393189496131"
"3340256865385134501920754914630053079718866209280470"
)
assert (
sqrt("10") == "3.16227766016837933199889354443271853371955513932"
"5216826857504852792594438639238221344248108379300295"
)
assert sqrt("0.0") == "0.0"
assert sqrt("0.0000") == "0.00"
assert sqrt("-0.0") == "-0.0"
assert sqrt("1.0") == "1.0"
assert (
sqrt("3.14") == "1.772004514666935040199112509753631525073608516"
"162942966817771970290992972348902551472561151153909188"
)
assert (
sqrt("0.4") == "0.6324555320336758663997787088865437067439110278"
"650433653715009705585188877278476442688496216758600590"
)
assert (
sqrt("10.0") == "3.162277660168379331998893544432718533719555139"
"325216826857504852792594438639238221344248108379300295"
)
with pytest.raises(ToolExecutionError):
sqrt("-1")
with pytest.raises(ToolExecutionError):
sqrt("-10")
with pytest.raises(ToolExecutionError):
sqrt("-1.0")
with pytest.raises(ToolExecutionError):
sqrt("-1.3")
with pytest.raises(ToolExecutionError):
sqrt("-10.0")