15 lines
341 B
Python

from parser import Parser
def test_Parser():
parser = Parser("(-b + sqrt(b^2-4a c))/(2a)")
assert parser.variables_names == {"c", "a", "b"}
assert parser.evaluate({"a": 1, "b": -3, "c": 2}) == 1.0
assert all(
parser.evaluate({"a": [1, 1, 1], "b": [-5, -6, -9], "c": [6, 9, 20]})
== [2.0, 3.0, 4.0]
)