import time from signalcanvas_graph_based_market_signal_s import Graph, SignalNode, Link, HedgePlan def test_graph_basic(): g = Graph() n1 = SignalNode(id="n1", type="price", asset="AAPL", venue="X", timestamp=time.time(), value=150.0) n2 = SignalNode(id="n2", type="depth", asset="AAPL", venue="X", timestamp=time.time(), value=1.5) g.add_node(n1) g.add_node(n2) l = Link(from_id="n1", to_id="n2", relation="lead-lag", weight=1.0) g.add_link(l) s = HedgePlan(id="h1", delta={"AAPL": 2.0}, scenario_name="sc1", timestamp=time.time()) g.add_hedge(s) assert g.get_node("n1").id == "n1" assert g.links[0].from_id == "n1" assert g.hedges["h1"].delta["AAPL"] == 2.0