hy/tests/lang/test_expression.py
2012-12-16 21:44:14 -05:00

35 lines
688 B
Python

from hy.lex.tokenize import tokenize
from hy.lang.expression import HYExpression
code = """
(+ 1 1) ; this is a test.
(fn foo bar) ; this is a test.
"""
def test_basics():
"""Test the basics"""
assert {
"function": "fn",
"args": [
"one"
]
} == HYExpression(["fn", "one"]).get_invocation()
def test_fn_split():
"""Test if we can get a statement something right."""
one, two = tokenize(code)
assert one.get_invocation() == {
"function": "+",
"args": [
1, 1
]
}
assert two.get_invocation() == {
"function": "fn",
"args": [
"foo", "bar"
]
}