45 lines
1.1 KiB
Python
45 lines
1.1 KiB
Python
"""Test parser functionality."""
|
|
|
|
import pytest
|
|
from src.tampy.transpiler import TamilParser
|
|
|
|
|
|
def test_parse_simple_python():
|
|
"""Test parsing simple Python code."""
|
|
code = "print('hello')"
|
|
keywords = {"print": "இருப்பு"}
|
|
|
|
parser = TamilParser(keywords)
|
|
tree = parser.parse(code)
|
|
|
|
assert isinstance(tree, ast.Module)
|
|
|
|
|
|
def test_parse_import_statement():
|
|
"""Test parsing import statement."""
|
|
code = "import sys"
|
|
keywords = {"import": "மேற்கோள்கள்"}
|
|
|
|
parser = TamilParser(keywords)
|
|
tree = parser.parse(code)
|
|
|
|
assert isinstance(tree, ast.Module)
|
|
|
|
|
|
def test_parse_function_definition():
|
|
"""Test parsing function definition."""
|
|
code = "def foo(): pass"
|
|
keywords = {"def": "வரையறை"}
|
|
|
|
parser = TamilParser(keywords)
|
|
tree = parser.parse(code)
|
|
|
|
assert isinstance(tree, ast.Module)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
test_parse_simple_python()
|
|
test_parse_import_statement()
|
|
test_parse_function_definition()
|
|
print("All tests passed")
|