equicompiler-algebraic-port.../tests/test_core.py

22 lines
658 B
Python

import unittest
from equicompiler_algebraic_portfolio_dsl_to_.core import parse_dsl_to_ir
class TestCore(unittest.TestCase):
def test_parse_basic(self):
dsl = (
"assets: AAPL, MSFT, GOOG\n"
"objectives: maximize_return\n"
"constraints: max_drawdown=0.2, var=0.95"
)
ir = parse_dsl_to_ir(dsl)
self.assertEqual(ir["assets"], ["AAPL", "MSFT", "GOOG"])
self.assertIn("maximize_return", ir["objectives"])
self.assertEqual(ir["constraints"]["max_drawdown"], "0.2")
self.assertEqual(ir["constraints"]["var"], "0.95")
if __name__ == "__main__":
unittest.main()