from signalcanvas_graph_based_market_signal_s.backtester import replay_deltas from signalcanvas_graph_based_market_signal_s.privacy import aggregate_signals from signalcanvas_graph_based_market_signal_s.nlp import generate_narrative def test_aggregate_and_narrative(): signals = [{"AAPL": 1.0}, {"AAPL": -0.2, "GOOG": 0.5}] aggregated = aggregate_signals(signals, budgets=0.0) # Without DP, we expect sums assert abs(aggregated["AAPL"] - (1.0 - 0.2)) < 1e-9 assert aggregated["GOOG"] == 0.5 narrative = generate_narrative({"AAPL": 0.8}) assert isinstance(narrative, str)