22 lines
519 B
Python
22 lines
519 B
Python
import math
|
|
from idea81_audioledger_studio_verifiable.core import parse_dsl, LocalProblemIR
|
|
|
|
|
|
def test_parse_dsl_basic_assets_and_risk():
|
|
text = """
|
|
assets:
|
|
AAPL: 100
|
|
BTC: 2
|
|
objectives:
|
|
maximize_return: true
|
|
risk_budgets:
|
|
CVaR: 0.05
|
|
"""
|
|
ir = parse_dsl(text)
|
|
assert "objects" in ir
|
|
obj: LocalProblemIR = ir["objects"] # type: ignore
|
|
assert isinstance(obj, LocalProblemIR)
|
|
assert obj.assets["AAPL"] == 100
|
|
assert obj.assets["BTC"] == 2
|
|
assert obj.risk_budgets.get("CVaR") == 0.05
|