Files
cpl/test/core/utils/number_test.py
edraft 17408d5cd2
Some checks failed
Test before pr merge / test-lint (pull_request) Failing after 7s
Added first tests #191
2025-12-10 23:21:52 +01:00

39 lines
1.1 KiB
Python

from cpl.core.utils.number import Number
def test_is_number():
assert Number.is_number(10) is True
assert Number.is_number(3.14) is True
assert Number.is_number("42") is True
assert Number.is_number("3.14") is True
assert Number.is_number("-10") is True
assert Number.is_number("+5.5") is True
assert Number.is_number("abc") is False
assert Number.is_number("") is False
assert Number.is_number(None) is False
assert Number.is_number(True) is False
def test_to_number():
assert Number.to_number("42") == 42
assert Number.to_number("3.14") == 3.14
assert Number.to_number(10) == 10
assert Number.to_number(3.14) == 3.14
assert Number.to_number("-7") == -7
assert Number.to_number("+8.2") == 8.2
# Optional: define how errors behave
try:
Number.to_number("abc")
except ValueError:
pass
else:
assert False, "Expected ValueError for non-numeric input"
try:
Number.to_number(None)
except (TypeError, ValueError):
pass
else:
assert False, "Expected exception for None input"